- On MAC (inverts the colors of the whole desktop) Press simultaneously ctrl+alt+cmd+8
- On Linux (inverts the colors of the active window) Press simultaneous super+N (where supper is the key with the windows logo)
Friday, June 18, 2010
[Trick] How to invert window colors
Sometimes the black foreground on white background can be tiring for your eyes. This is specially true if you have to spend a lot of time in front of computers. In mac and linux there is a simple trick in which you can invert the color scheme:
Thursday, June 10, 2010
[OpenOffice] From database to bibtex entry
For those struggling in the conversion from OpenOffice Bibliography database to bibtex entry. I've generated a small ruby script that makes the translation. This is for open office 3.2.
If any of you knows a more robust tool (probably already embedded in OpenOffice, which I could not find), please let me know.
The process to do this would be:
Good luck!
If any of you knows a more robust tool (probably already embedded in OpenOffice, which I could not find), please let me know.
The process to do this would be:
- Find the database file (dbf) in your local directory (usually under the .openoffice.org/3/user/database/biblio/ directory)
- Open the file with OpenOffice Calc (or Excel) and export it to CSV (make sure you specify ";" as field delimiter)
- Run the following script, putting as first argument in the command file the CSV file that you created in the previous step.
Good luck!
#!/usr/bin/ruby
#-----------------------------------------------------------------------
#
# dbf_to_bibtex.rb
# Script to transform from OpenOffice dbf to bibtex compliant format
#
# Change Log
# 20100610 MGF Created
#
# @ Miquel Garcia-Fernandez
#
#-----------------------------------------------------------------------
# Retrieve the CSV filename to parse
file_name = ARGV[0]
file = File.open( file_name, "r" )
# Field identifiers
identifiers = Array.new
CATEGORY = { "0" => "article",
"1" => "book",
"8" => "techreport",
"16" => "misc", }
file.each_with_index do |line,i_line|
# Retrieve the field identifiers
if i_line==0 then
fields = line.split(";")
fields.each_with_index do |field,i_field|
# Clean from double quotes and remove characters after comma
identifier = field.delete("\"").split(",").flatten[0]
identifiers << identifier.downcase
end
# Go to next line
next
end
# Now parse each field and generate bibtex entry
fields = line.split(";")
# Hash holding the valid entries of the current reference
entries = Hash.new
fields.each_with_index do |field, i_field|
clean_field = field.delete("\"")
next if clean_field.size == 0
entries[ identifiers[i_field] ] = clean_field
end
# Generate bibtex entry for the current line
print "@#{CATEGORY[ entries["type"] ]}{#{entries["identifier"].gsub(/ .*, /,':').gsub(', ',':')},\n"
entries.each_pair do |key,value|
next if key=="type"
next if key=="identifier"
next if key=="isbn"
print " #{key} = \"#{value}\",\n"
end
print "}\n\n"
end
Subscribe to:
Posts (Atom)