maandag 6 januari 2014

Nano syntax highlighting on OSX

This post explains you how to install syntax highlighting on Nano in OSX

If you haven't got it already install homebrew first. For info on homebrew 


After this you need to do a:

brew doctor

and fix the problems. (don't worry about the man pages) 
Now make sure the right repository is added: 
brew tap homebrew/dupes

And now install nano with brew:
brew install nano

Now edit the ~/.nanorc to:

set nowrap
set smooth
set autoindent
set backup
set historylog
set morespace
set tabsize 4
set tabstospaces
set mouse
set const
set backupdir "~/werk/backup/nano-backups"
include "/usr/local/share/nano/asm.nanorc"
include "/usr/local/share/nano/awk.nanorc"
include "/usr/local/share/nano/c.nanorc"
include "/usr/local/share/nano/cmake.nanorc"
include "/usr/local/share/nano/css.nanorc"
include "/usr/local/share/nano/debian.nanorc"b
include "/usr/local/share/nano/fortran.nanorc"
include "/usr/local/share/nano/gentoo.nanorc"
include "/usr/local/share/nano/groff.nanorc"
include "/usr/local/share/nano/html.nanorc"
include "/usr/local/share/nano/java.nanorc"
include "/usr/local/share/nano/makefile.nanorc"
include "/usr/local/share/nano/man.nanorc"
include "/usr/local/share/nano/mgp.nanorc"
include "/usr/local/share/nano/mutt.nanorc"
include "/usr/local/share/nano/nanorc.nanorc"
include "/usr/local/share/nano/objc.nanorc"
include "/usr/local/share/nano/ocaml.nanorc"
include "/usr/local/share/nano/patch.nanorc"
include "/usr/local/share/nano/perl.nanorc"
include "/usr/local/share/nano/php.nanorc"
include "/usr/local/share/nano/pov.nanorc"
include "/usr/local/share/nano/python.nanorc"
include "/usr/local/share/nano/ruby.nanorc"
include "/usr/local/share/nano/sh.nanorc"
include "/usr/local/share/nano/tcl.nanorc"
include "/usr/local/share/nano/tex.nanorc"
include "/usr/local/share/nano/xml.nanorc"

This should do the trick. 
It is possible that you bump into some errors like this:

Error in /usr/local/Cellar/nano/2.2.6/share/nano/mgp.nanorc on line 4: Command "header" not understood

Press Enter to continue starting nano.


Error in /usr/local/Cellar/nano/2.2.6/share/nano/perl.nanorc on line 4: Command "header" not understood

Press Enter to continue starting nano.


Error in /usr/local/Cellar/nano/2.2.6/share/nano/python.nanorc on line 4: Command "header" not understood

Press Enter to continue starting nano.


Error in /usr/local/Cellar/nano/2.2.6/share/nano/ruby.nanorc on line 4: Command "header" not understood

Press Enter to continue starting nano.


Error in /usr/local/Cellar/nano/2.2.6/share/nano/sh.nanorc on line 4: Command "header" not understood

Press Enter to continue starting nano.

This can mean two problems, the $PATH is not pointing to the new version of nano.
Start nano, see at the top if the version 2.2.6 is running. If not then type $PATH at the commandline you should see: /usr/local/bin at the beginning of the line. If not then edit /ets/paths so the /usr/local/bin is on top. This should solve it. 

Just go to:  https://github.com/Munter/dotfiles/tree/master/.nano and get this missing files and add them. 

zondag 5 januari 2014

Organize or clean your downloads folder

My downloads folder is always a mess and I got fed up with it, I have wrote in a script that will clean up my downloads folder.

First I created a few folders in the downloads folder:

  • DL-Compressed 
  • DL-Firmware 
  • DL-Programs 
  • DL-Android
  • DL-Documents
  • DL-media
After this I created a bash script:


# Move Wetransfer files to tje picure folder 
mv ~/Downloads/wetransfer*  ~/Pictures/Wetransfer

# Move all Airdroid Files to the DL-Airdroid folder
mv ~/Downloads/Files_downloaded_by_AirDroid*  ~/Downloads/DL-Airdroid/

# Move all porn to DL-Media
mv ~/Downloads/*.jpg ~/Downloads/DL-media/
mv ~/Downloads/*.JPG ~/Downloads/DL-media/
mv ~/Downloads/*.png ~/Downloads/DL-media/
mv ~/Downloads/*.PNG ~/Downloads/DL-media/
mv ~/Downloads/*.mov ~/Downloads/DL-media/    
mv ~/Downloads/*.MOV ~/Downloads/DL-media/
mv ~/Downloads/*.bmp ~/Downloads/DL-media/
mv ~/Downloads/*.BMP ~/Downloads/DL-media/
mv ~/Downloads/*.jpeg ~/Downloads/DL-media/
mv ~/Downloads/*.JPEG ~/Downloads/DL-media/
mv ~/Downloads/*.gif ~/Downloads/DL-media/
mv ~/Downloads/*.GIF ~/Downloads/DL-media/
mv ~/Downloads/*.tif ~/Downloads/DL-media/
mv ~/Downloads/*.TIF ~/Downloads/DL-media/

# move al compressed files to DL-Compressed folder
mv ~/Downloads/*.zip ~/Downloads/DL-Compressed/
mv ~/Downloads/*.ZIP ~/Downloads/DL-Compressed/
mv ~/Downloads/*.rar ~/Downloads/DL-Compressed/
mv ~/Downloads/*.RAR ~/Downloads/DL-Compressed/
mv ~/Downloads/*.jar ~/Downloads/DL-Compressed/
mv ~/Downloads/*.JAR ~/Downloads/DL-Compressed/
mv ~/Downloads/*.7z ~/Downloads/DL-Compressed/
mv ~/Downloads/*.7Z ~/Downloads/DL-Compressed/
mv ~/Downloads/*.tgz ~/Downloads/DL-Compressed/
mv ~/Downloads/*.TGZ ~/Downloads/DL-Compressed/

# Move all installers to DL-Programs 
mv ~/Downloads/*.dmg ~/Downloads/DL-Programs/
mv ~/Downloads/*.DMG ~/Downloads/DL-Programs/
mv ~/Downloads/*.pkg ~/Downloads/DL-Programs/
mv ~/Downloads/*.pkg ~/Downloads/DL-Programs/
mv ~/Downloads/*.prefPane ~/Downloads/DL-Programs/

# Split up all the documents
mv ~/Downloads/*.pdf  ~/Downloads/DL-Documenten/DL-PDF/
mv ~/Downloads/*.PDF  ~/Downloads/DL-Documenten/DL-PDF/
mv ~/Downloads/*.txt  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.TXT  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.csv  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.CSV  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.htm  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.html  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.HTM  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.HTML  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.cfg  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.CFG  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.tpl  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.TPL  ~/Downloads/DL-Documenten/DL-TXT/
mv ~/Downloads/*.doc  ~/Downloads/DL-Documenten/DL-Docs/
mv ~/Downloads/*.docx  ~/Downloads/DL-Documenten/DL-Docs/
mv ~/Downloads/*.DOC  ~/Downloads/DL-Documenten/DL-Docs/
mv ~/Downloads/*.DOCX  ~/Downloads/DL-Documenten/Docs/

# Remove windows stuff
rm ~/Downloads/*.exe 
rm ~/Downloads/*.EXE

# Verwijderen van overbodige folders (alle niet DL- folders) 
find ~/Downloads/. -type d -not -name 'DL-*' -print0 | xargs -0  rm -R

# Remove files from Compressed after 30 days. 
find ~/Downloads/DL-Compressed/* -mtime +30 -exec rm {} \;

Now i added the file to the crontab
Create a file called crontab.txt 
fill it up with: 
15  * * * * ~/scripts/download.sh  &> /dev/null

Now put it in the crontab:
crontab crontab.txt 

Check your crontabs with:
crontab -l 

Clear your crontabs with:
crontab -r 

Slow and too much memory Google Chrome on OSX Mavericks

After upgrading to Mavericks I have the problem that Google Chrome is eating a lot of memory. My macbook is getting slower. More memory will solve the problem. If you don't want to upgrade your memory there is a great solution: The Great suspender 

What will it do for you? It wil suspend the tabs you are not using so the tabs will only ask memory from your computer when it is used. 

Make things easier for me

I have a somewhat demanding job, a lott of things running in the same time. I can manage to do 50 todo's in comfortable way, but with just a little more todo's it becomes a mess. 

What are my main problems? 

  • keep track of all my todo's without forgetting the (for me) unimportant stuff 
  • getting new todo's in the system
  • organizing my todo's
  • organizing my notes that belong to the todo's 
Keeping track in of all the todo's is just a simple solution, just do it: 

  1. Every morning read your mail, add the todo's to your list 
  2. Close your mailbox
  3. Review your todo list 
  4. Make a short-list for that morning
  5. Start to work
After lunch, the same thing. 

How do I deal with this mail every day. 

1. I use Apple's mail.app and I've set-up this system: 

  • INBOX - all unread mail
  • Answer - These mails need an answer 
  • Follow Up - Answered them of just information I need to follow up on.  
  • Today - Need answering today
  • ToDo - Make a todo from this

Create the following smart mailboxes: 
  • INBOX - all unread mail
  • Answer - showing all blue marked messages. 
  • Follow Up - showing all orange marked messages 
  • Today - showing all yellow messages
  • ToDo - showing all green messages
  • Recently seen - for the mistakes or review 
  • Recently send - for review 
Create the following shortcuts: (http://support.apple.com/kb/PH13916)
  • alt-cmd-b =  Blue (in dutch b for beantwoorden (answer)
  • alt-cmd-o =  Orange (in dutch o for opvolgen (follow up)
  • alt-cmd-v =  Yellow (in dutch v for vandaag (today)
  • alt-cmd-t =  Green (t for todo) 
When a mail comes in you need to decide right away what to do. If it takes less than 2 minutes to deal with it I will, not I'll make a todo or put it in answer. 

2. Close your mailbox, it will distract you from your work, if they need you they'll call. 

3. Review your todo list. 

I was a long time user of Wunderlist, great app on all platforms. But I discovered that I love text files, you can open it everywhere, small.  And also organizing notes in outliners, but then I had problems with the files, large and I couldn't open them everywhere. Just recently I discoverd Taskpaper and I love it. TaskPaper — Simple to-do list software for Mac & iPhone It brings it all together for me I just love it. 

I sync a file on dropbox wich I can open everywhere with a texteditor. 

You can automate some more stuff with Tasklist: http://www.hogbaysoftware.com/wiki/TaskPaper

I use this option:


Service Menu Items
Service menu items provide similar functionally to the quick entry window. They allow 
you to add new tasks to your list without switching to TaskPaper. To use the service 
menu:
1. Select text in any application that you want to make into a task.
2. Choose Application Name > Services > TaskPaper > New Entry and a new task 
will be created from your selected text and inserted into your lists Inbox project.
4. It helps me to create a list for me what is important for that morning. It gives me more focus and less cherry picking. 

5. Start to work, there are a million things to explore, but it doesn't getting your todo's done, just add them to your list. You will get to it. 





The first message

Hi all, 

This is my first blog message so please enjoy the reading.