ONLamp.com
oreilly.comSafari Books Online.Conferences.

advertisement


Organizing Files
Pages: 1, 2, 3, 4, 5, 6, 7

How to record progress

  • When recording daily events, I don't need to write a thesis every day to describe what happened. The file LOG in today's folder holds brief notes on what I did, files that I downloaded or changed, and the like. I can also join those files together at the end of the month to make a summary.
  • When doing a project for a person, I use the person's full name or email address for the filename, such as jane-doe-login to describe a persistent login problem that Jane is having.
  • When doing a project for a place, I use the place name plus a tag for the filename, like charleston-webpage. The locate command lets me find any other files with similar tags as part of the filename (Figure 9).

    Finding a project by place
    Figure 9. Finding a project by place

  • When doing something on a given day, if I need to finish something by next Wednesday, I put the file there. The first thing I do each morning is type today and see what's waiting.
  • Accessing notebook files from a browser is easy. The Apache web server let you roam around your notebook files:

    Alias /home /home/your-userid
    <Directory /home/your-userid>
       Options Indexes
       Order deny,allow
       deny from all
       allow from 127.0.0.1
       allow from 192.168.1.2
    </Directory>

    Here's a calendar web page and a calendar style sheet with which to display a year's worth of folders in your notebook. Notice the second week in September; the style sheet lets you highlight any days you like.

Search, Don't Categorize

It's a lot easier to break up my workstation text files by frequency of updates, and then set up searching appropriately:

  • home--files under my home directory
  • logs--files with a base name of LOG, all over the place
  • unread mail--mail that has arrived that I haven't read yet
  • notebook--files under $HOME/notebook
  • root--files on the / (root) filesystem
  • saved mail--messages I've actually read
  • usr--files on the /usr filesystem
  • web--anything provided by my workstation web server

I installed SWISH-E to index anything in text format. That plus one or two shell scripts handles my search needs.

Other Things That Help

That's not all; I've developed several other tricks.

A good shell

I used tcsh and Bash for several years. They're fine programs, but I haven't found anything to match the flexibility of the Z shell:

  • Completion--zsh is very good at completing command lines. You're not limited to filenames; you can complete hostnames, user IDs, additional options for the command you're typing, and more.
  • Shortcuts--It's nice to be able to use single characters to do the work of programs such as which (Figure 10).

    Using zsh shortcuts
    Figure 10. Using zsh shortcuts

  • Easy navigation--You can move to a directory just by typing the name (Figure 11). My zsh setup files are $HOME/.zfunc, $HOME/.zlogin, $HOME/.zlogout, $HOME/.zshcomp, $HOME/.zshenv, and $HOME/.zshrc.

    Directory navigation in zsh
    Figure 11. Directory navigation in zsh

A good window manager

I started using the FVWM window manager in 1999, and really liked it when configured using Eric Raymond's Big Blue-Steel Desktop. However, I wanted to make better use of the open desktop space I had, so I moved to the IceWM window manager a few months ago.

I have four virtual desktops for my basic work environment:

  • Desktop 1 holds two xterms side by side, one of which is usually for remote SSH connections to servers.
  • Desktop 2 holds the Mozilla web browser, which I have configured to use the entire screen.
  • Desktop 3 runs Xpdf, which I use for viewing PDF files.
  • Desktop 4 is usually empty, but it's a good place to start Leo if I have the urge to do some outlining.

The function keys F1-F4 take me to desktops 1-4, respectively. F5 locks my keyboard. F6 lets me either restart IceWM or log out.

IceWM takes up very little screen real estate. I have one toolbar at the bottom of my screen that is barely 3/8 inch high, so I have plenty of room for applications (Figure 12).

My IceWM toolbar
Figure 12. My IceWM toolbar

The leftmost button (the IceWM logo) brings up a programs menu. Button 2 (which looks like an underscore) dismisses all the applications on your current desktop. It's a toggle; click it again and they all come back. Button 3 (which looks like overlapping windows) gives a one-click menu to get to any open application on any workspace. Button 4 (which looks like a monitor) opens a tiny Xterm window. Button 5 (Web) starts Mozilla in workspace 2; button 6 (Xpdf) starts Xpdf in workspace 3; button 7 (Lock) runs xlock; button 8 (Leo) runs the Leo outliner in the current workspace; and button 9 (PrtScrn) uses the ImageMagick program import to save a screenshot to the file $HOME/prn/screendump.png. Finally, the buttons containing numbers take me directly to a respective workspace.

My IceWM setup files are $HOME/.icewm/keys, $HOME/.icewm/menu, $HOME/.icewm/preferences, $HOME/.icewm/theme, $HOME/.icewm/toolbar, and $HOME/.icewm/winoptions.

My general X-windows setup files are $HOME/.Xdefaults, $HOME/.xinitrc, $HOME/.xmodmaprc, and $HOME/.xsession.

Pages: 1, 2, 3, 4, 5, 6, 7

Next Pagearrow




Valuable Online Certification Training

Online Certification for Your Career
Earn a Certificate for Professional Development from the University of Illinois Office of Continuing Education upon completion of each online certificate program.

Linux/Unix System Administration Certificate Series — This course series targets both beginning and intermediate Linux/Unix users who want to acquire advanced system administration skills.

PHP/SQL Programming Certificate — The PHP/SQL Programming Certificate series is comprised of four courses covering beginning to advanced PHP programming, beginning to advanced database programming using the SQL language, database theory, and integrated Web 2.0 programming using PHP and SQL on the Unix/Linux mySQL platform.

Enroll today!


Sponsored by: