Update files

This commit is contained in:
Tom Willemsen 2013-01-11 01:16:41 +01:00
parent 9d63923436
commit caedd92eef
34 changed files with 427 additions and 1067 deletions

View file

@ -19,8 +19,8 @@
:section-numbers nil :section-numbers nil
:style-include-default nil :style-include-default nil
:author-info nil :author-info nil
:creator-info nil :creator-info t
:style "<link rel=\"stylesheet\" type=\"text/css\" href=\"http://ryuslash.ninth.su/stylesheet.css\" />" :style "<link rel=\"stylesheet\" type=\"text/css\" href=\"http://ryuslash.org/main.css\" />"
:link-up "../" :link-up "../"
:link-home "http://ryuslash.org") :link-home "http://ryuslash.org")
("oni" ("oni"

1
.gitignore vendored
View file

@ -1 +1,2 @@
*.html *.html
_publish/

4
Makefile Normal file
View file

@ -0,0 +1,4 @@
.PHONY: publish
publish:
scp -r _publish/* ryuslash.org:public_html/orgweb/

33
site/articles/fonts.org Normal file
View file

@ -0,0 +1,33 @@
#+TITLE: Fonts
* Intro
Being a programmer I spend a lot of time looking at text on my
computer. Mostly monospaced text. So I like to have something
nice to look at. This is a list of the fonts I've found and/or
tried and my opinion about them, these are not just facts so feel
free to disagree.
I'm currently using:
| Name | Size |
|--------+------------------------------|
| [[Monaco]] | 12 (or pixelsize=18 for XFT) |
* List
Here is the list of fonts I've found and/or tried.
** Monaco
This font has the most beautiful parentheses I've ever found
anywhere. Placing two together (like so ~()~) almost creates a
circle. I like this because I write quite a bit of lisp, and as
you may or may not know, lisp uses a lot of parentheses.
** osaka_unicode
This font is almost identical to [[Monaco]]. The only real
differences I've found is that is has a different ~a~ and that is
adds a space to each quote (at least double, but I think also
single).

View file

@ -0,0 +1,83 @@
#+TITLE: Structure of a (my) home directory
#+STARTUP: content
* home
The home directory, master of all, where it all begins, which
contains everything.
** projects
Contains all my projects, may contain sub-directories for grouping
projects.
*** ext
Projects that are not mine.
There are certain projects which I use that I compile from source,
or others where I might wish to inspect the source without
actually working on it.
*** study
Does not contain projects, but a somewhat-structured collection
of code that I write/copy when studying.
*** test
Scripts/snippets to test a certain feature or algorithm. Not
part of any project currently, but perhaps in the future.
*** work
Contains all projects that are part of my job. Grouped by
company I work/have worked for.
** documents
Contains all of my documents, may contain sub-directories for
grouping documents.
*** work
Contains all documents that are part of my job. Grouped by
company I work/have worked for.
*** trash
Projects that I don't work on anymore, that I don't have any
intention of working on in the future, but that (might) contain
something that I don't want to lose.
** downloads
Contains all of my downloads. Most of these should be sent
elsewhere.
** games
Contains all the games I have acquired/installed.
** share
Containing files that I wish to share with, for the moment, my
virtual machines. This directory might be automatically mounted
inside such a virtual machine.
** var
Contains (possibly large) supporting files. Not projects or files
I work on or even use directly, but things that I use indirectly.
*** aur
Packages downloaded from the Arch User Repository.
*** abs
Packages copied from the Arch Build System for customization.
*** virtualenvs
Virtualenv installations.

View file

@ -1,101 +0,0 @@
#+TITLE: The 98% perfect RSS solution
#+DATE: 2012-11-30 10:00
#+TAGS: rss emacs gnus gwene tt-rss avandu
* Test
I've been looking for the "perfect" RSS reading solution for a while
and I just got this idea for a setup that has to be about 98% of all
I'm looking for.
The things I'm looking for are:
- Emacs interface. This isn't that big a problem since anything
with an API can be made to have such an interface, and I feel
comfortable enough with Emacs Lisp to write it myself if I have
to, like I was doing with [[http://code.ryuslash.org/cgit.cgi/emacs/avandu/][avandu]], but then it /does/ need a(n/ good)
API.
- Unbound to a single computer. It's a hassle to have to remember
what you have and haven't read. If it was easy your RSS reader
wouldn't care about (un)read items, everything would just be
"items". So sharing that state between computers is pretty
important.
- A server. Something that keeps running 24/7. Or at least the
closest possible approximation of that. It's no good to miss
everything that happens between 11pm and 9am just because you
don't have your feed reader running. Of course this is only a
problem if you're following some high-traffic feeds, but they
exist too.
- Runs locally. The nice thing about having shell access to a
server somewhere that someone else keeps online for you is the
possibility to run something like [[http://newsbeuter.org/][newsbeuter]] and just
(de/reat)tach from whichever computer you're working on. The
downside is, though, that this breaks pretty much all integration
with your desktop. Opening URLs becomes a reliance on your
terminal emulator's ability to parse and open them. Viewing media
such as images, or audio files from a podcast, turns into ~Save,
Transfer, Open~ instead of just the ~Open~.
- Handles big feed lists. Even if you only read five feeds, the day
may come you'll be reading fifty, or even much more. A piece of
software that handles this well is a must. This is the problem I
had with [[http://codezen.org/canto/][canto]] and Emacs' [[http://www.emacswiki.org/emacs/NewsTicker][newsticker]]. *canto* looked awesome, the
most interesting interface to RSS feeds I have come across so far,
but back when I tried it trying to read my collection of feeds
would lock-up my computer. *newsticker* would lock-up my emacs
session for 10-20 minutes.
Now though I have found something that does it all. It is actually
a twist on something I used some time ago.
*Emacs* + [[http://gnus.org/][Gnus]] + [[http://gwene.org/][Gwene]] + [[http://www.cis.upenn.edu/~bcpierce/unison/][unison]]. Not the easiest thing to set-up
perhaps, but once *Emacs* + *Gnus* is in place the rest is a piece of
cake.
*Gwene* is an awesome service that turns RSS feeds into
newsgroups. *unison* is an awesome piece of software for
synchronising files between different computers. *Gnus* is a real
newsreader. *Emacs* is what *Gnus* runs on.
So it's kind-of like cheating. *Gnus* is not unbound to a single
computer and *Gwene* doesn't offer server-side state tracking either.
But because *Gnus* uses a single file to store state about all of its
subscribed groups, this makes it a good candidate for sharing that
one file. This is not something unique to *Gnus*, at least [[http://www.slrn.org/][slrn]] uses
the same kind of file, the ~.newsrc~ file (or in *Gnus*' case
~.newsrc.eld~).
So I register the feeds I want to follow with *Gwene*, if they aren't
already registered. I subscribe to the resulting newsgroups on
~news.gwene.org~ with *Gnus* and when I switch over to another computer
I use *unison* to synchronise the ~.newsrc.eld~ file.
An example configuration of *Gnus* could just be as simple as:
#+BEGIN_SRC emacs-lisp
(setq gnus-select-method '(nntp "news.gwene.org"))
#+END_SRC
*unison* just needs:
#+BEGIN_EXAMPLE
root=/your/home/dir/
root=/your/server/root/
path=.newsrc.eld
#+END_EXAMPLE
And that's about it.
Now it's still not 100% perfect. I've seen that *Gwene* can't handle
100% of the feeds I throw at it, but these can be fixed either by
contacting the people publishing them or by improving *Gwene*'s
parser. It also doesn't automatically check periodicaly, though I
think *Gnus* can be set-up to do that, but since I also use it to read
my mail (again) that's not really an issue. It also isn't
accessible without *Emacs*, *Gnus* and *Unison*, but I hate web-interfaces
anyway.
So that's it. My 98% perfect RSS reading solution.

View file

@ -1,22 +0,0 @@
#+TITLE: A new org-blog
#+DATE: 2012-04-24 00:52:00
#+TAGS: org-blog project
I've taken it upon myself to update the ~org-blog.el~ that was written a
long time ago. I want something other than an extra layer over some
other system, ~org-mode~ has everything a blog needs, but it doesn't
generate an RSS feed or a special index page.
There was the ~org-blog.el~, but that uses some old functions that don't
exist anymore, so I thought I'd try to update it.
I just barely got it working, as you can see from this post. It
generates an RSS feed, but the links don't work. It generates an index
page, but no links to the individual pages (not that it needs it,
really). It doesn't listen to some of the settings (toc, sections) the
rest of the publishing projects do.
I'd also like to have all posts in a single file and use things like a
post's category and tags and such.
It'll be interesting to see what else I can fix.

View file

@ -1,26 +0,0 @@
#+TITLE: Another way to get a selection
#+DATE: 2012-05-03 10:04:00
#+TAGS: emacs elisp org-mode coding
When I was first looking into improving my mailbox selection function
I was looking at how to just ask the user for input with completions.
Though now that I came across ~tmm-prompt~ I really prefer this way of
working, at least in this case.
However, today another function was mentioned, in response to someone
pointing out ~org-completing-read~: ~completing-read~. Wow that's a far
leap.
Anyway:
#+BEGIN_SRC emacs-lisp
(completing-read "Your favorite color: "
'("red" "green" "blue" "yellow"))
#+END_SRC
This will ask for user input and provide these options as completions,
but it won't show a list of options, of provide shortcuts, like
~tmm-prompt~ does.
It's good to know these things, and I really should read both the
emacs manual and the emacs lisp reference manual at some point.

View file

@ -1,42 +0,0 @@
#+TITLE: Ask for selection in Emacs
#+DATE: 2012-05-02 21:09:00
#+TAGS: emacs elisp coding
I came across an email on one of the emacs mailing lists today, where
someone asked how to ask a user for input whilst providing
completions. The first answer he got was to try =tmm-prompt=, so I
looked into it a little.
I use =mu4e= as my primary email program, but since it isn't designed
(seemingly) for use with multiple accounts I've got some wrapper
functions that set some variables according to my liking and then
start =mu4e=. This works very well, but it's a pain to have to use =M-x
view-ryu-mail= or =M-x view-ninthfloor-mail= and such, so I wrote a
function to read a string from the minibuffer, which I then bound to
the ~<XF86Mail>~ key, this turned it into, for example =<XF86Mail> ryu=
and =<XF86Mail> ninthfloor= and so on, but this doesn't have any
completion or notification of my options.
So after looking at ~tmm-prompt~ I came up with the following:
#+BEGIN_SRC elisp
(defvar oni:mailbox-map
'(("ryulash.org" . "ryu")
("ninthfloor" . "ninthfloor"))
"A mailbox map for use with `tmm-prompt'.")
(defun view-ryu-mail ()...)
(defun view-ninthfloor-mail ()...)
(defun view-mu ()
(interactive)
(let* ((tmm-completion-prompt "Choose a mailbox\n")
(inbox (tmm-prompt oni:mailbox-map)))
(funcall (intern (concat "view-" inbox "-mail")))))
#+END_SRC
I've left out the definitions and some mail accounts for brevity.
~tmm-prompt~ is usually used when using the text-mode menu with =M-` `=,
but it works very well here too. This changes mailbox selection to,
for example =<XF86Mail> r= or =<XF86Mail> n=.

View file

@ -1,18 +0,0 @@
#+TITLE: Ask for selection in Emacs, addendum
#+DATE: 2012-05-02 21:52:00
#+TAGS: emacs elisp coding
I erroneously assumed (and thought I tested) that using ~tmm-prompt~
could be done the way I described before. The ~oni:mailbox-map~ variable
needs to be a little different from what I'd shown before, namely:
#+BEGIN_SRC elisp
(defvar oni:mailbox-map
'("top" ("menu" ("ryulash.org" . "ryu")
("ninthfloor" . "ninthfloor")
("gmail" . "gmail")
("aethon" . "aethon")))
"A mailbox map for use with `tmm-prompt'.")
#+END_SRC
Without the ~top~ and ~menu~ items it will complain about wrong arguments.

View file

@ -1,21 +0,0 @@
#+TITLE: A simple gnome-blog test
#+DATE: 2009-11-09 15:23
I've been looking for some way to post blog entries from my desktop
for a while now, I've come across Drivel (which crashes when I try to
log in to blogger with it), can't find a Bleezer package at work (just
checked it, first time I heard of it today) and no other gtk/gnome
client seems appealing.
Let's see what this gnome-blog app does.
Not much so far, bold or italic seems the be the only options
available to me at the moment, let's see about HTML:
to install gnome-blog in Ubuntu 9.04 use
#+BEGIN_SRC sh
sudo apt-get install gnome-blog
#+END_SRC
and the rest should then be self-evident.

View file

@ -1,39 +0,0 @@
#+TITLE: Code::Blocks "process terminted with signal 255 (0 minutes, 0 seconds)"
#+DATE: 2009-08-25 10:40
#+TAGS: codeblocks fedora coding
Yesterday after I came home from work I thought I'd try working on a
project I've been working on this past weekend.
I was away from home this weekend, so all the work I'd done had been
on another computer, in a virtual Ubuntu installation, so I hadn't yet
tried it at home.
Trying to build it went fine. Running it from a terminal went
fine. Even compiling and running on another Ubuntu installation (my
work laptop, non-virtual) went fine, but Code::Blocks reported to me
that whenever I tried running my application on my Fedora 11 home
installation that it terminated with signal 255.
I couldn't find what was wrong, I knew the application worked since I
tested it in another terminal window and if I debugged it it'd go
great up to the point where it met with a ~cin~ or ~cout~.
Being tired from a really long day (getting up at 5:00am, get on train
at 6:25am, get off train at 8:30am and at work 8:50am), I gave up
fairly quickly.
This morning though the itch got worse and I just had to investigate
further.
After about a minute of looking around I found someone at the Ubuntu
Forums asking about the exact same thing and it turns out that the
problem was that xterm wasn't installed. So a simple
#+BEGIN_SRC sh
su -c "yum install xterm"
#+END_SRC
was enough to fix the problem.
Now I can start developing my application again!

View file

@ -1,40 +0,0 @@
#+TITLE: Gnome-shell in Ubuntu 9.10
#+DATE: 2009-12-11 10:35
#+TAGS: gconf gnome gnome-panel gnome-shell linux ubuntu
Even though ~gnome-shell~ is really only a preview of what is to come
for gnome 3.0 and it's still buggy and sometimes not completely stable
perhaps, I really like it.
When I first saw the screenshots I was less then impressed, I thought
it didn't at all look like anything new or innovative, but rather
messy and confusing. But me being ever interested in new things and
all I just had to give it a try (the ~gnome-panel~ look was starting to
bore me).
Installing was easy
#+BEGIN_SRC sh
sudo apt-get install gnome-shell
#+END_SRC
and starting it afterwards was easy too
#+BEGIN_SRC sh
gnome-shell -r
#+END_SRC
Though first I had to disable compiz, which I don't really use anyway.
I was also using ~avant-window-navigator~, which disappeared on me but
still kept part of my notification area to itself. So the time after
that I first closed AWN and all was as it should be.
I didn't feel like having to manually start ~gnome-shell~ every time I
logged in so I started looking into a way to replace ~metacity~ and
~gnome-panel~ with ~gnome-shell~ and found that this could be done by
editing your ~gconf~ (with, for example, ~gconf-editor~) and setting the
~/desktop/gnome/session/required_components/windowmanager~ key from
~metacity~ to ~gnome-shell~.
Of course, since it is a composited window manager you need a video
card and driver that can handle screen compositing.

View file

@ -1,48 +0,0 @@
#+TITLE: Higher Resolution in Fedora 11 with proprietary NVidia Drivers
#+DATE: 2009-09-22 23:51
#+TAGS: fedora nvidia xorg
Ugh... I have been screwing around with this since the beginning of
time... Or at least since I installed Fedora for the so-manieth
time. Finally though I found out what I had to do.
Following [[http://forums.fedoraforum.org/showthread.php?t=204752][this guide]], I was able to easily and correctly install the
drivers. I used to build them myself, but that got me worse results
then anything.
To sum up, though:
#+BEGIN_SRC sh
# switch to super user (root)
su
# install rpmfusion repository
rpm -Uvh \
http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm \
http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
# install the driver (I have an i686 pc, you might need a different architecture, like 64_32 or something similar)
yum install kmod-nvidia xorg-x11-drv-nvidia-libs.i586
# reboot to make changed take effect
reboot
#+END_SRC
This only got me a 1024x768 resolution, though... Which pissed me off...
I started looking around the internet for a way to fix it in the
~xorg.conf~ itself, which I'd done on Fedora 9 before, but didn't
remember how (the reason I'm writing this right now), but didn't
actually find what I was looking for.
In the end I found 2 supposed fixes, one added a Modes option to the
=Display= section of the =Screen= section, and another was to add a
=DisplaySize= option to the =Monitor= section.
Well, I found out I needed both, so I added =DisplaySize 1280 1024= to
the =Monitor= section and =Modes "1280x1024"= to the ~Display~ subsection
of the ~Screen~ section.
Now it's working again, running at 1280x1024 with screen compositing
(so I can run ~gnome-do~ with docky theme, which I'm trying out for a
while).

View file

@ -1,21 +0,0 @@
#+TITLE: Blog
* Posts
#+begin_src emacs-lisp :exports results :results list
(defun file-to-data (file)
(unless (or (string= file ".") (string= file "..") (string= file "index.org"))
(let (title date)
(with-temp-buffer
(insert-file (concat "/home/slash/var/src/orgweb/site/blog/" file))
(goto-char (point-min))
(re-search-forward "^#\\+TITLE: \\(.*\\)$")
(setq title (buffer-substring-no-properties
(match-beginning 1) (match-end 1)))
(goto-char (point-min))
(re-search-forward "^#\\+DATE: \\(.*\\)$")
(setq date (buffer-substring-no-properties
(match-beginning 1) (match-end 1))))
(list date (concat "[[file:" file "][" title "]]")))))
(mapcar #'cadr (sort (delete nil (mapcar #'file-to-data (directory-files "/home/slash/var/src/orgweb/site/blog"))) (lambda (el1 el2) (not (string-lessp (car el1) (car el2))))))
#+end_src

View file

@ -1,50 +0,0 @@
#+TITLE: Low Resolution in Fedora 11 with Nvidia drivers
#+DATE: 2009-08-19 8:11
#+TAGS display fedora nvidia
*Finally*, after hours of looking and working I have finally again found
how to set the resolution to what I need (have 1280x1024, had
640x480). I've had trouble with my resolution in Fedora before, but I
don't ever remember it being this much of a pain, but then again I
don't remember much about it at all, wish I'd remembered how I fixed
it.
So to help me remember and perhaps even help someone else work around
it, here's how I finally got it working.
I'm now using the Nouveau driver with a generic LCD Panel 1280x1024. I
tried setting this in ~system-config-display~ many times, but it just
wouldn't accept my monitor.
So in the end I looked at ~system-config-display --help~ and noticed
~--reconfigure~ , which doesn't base the new configuration file on an
old one.
Using this option and setting my driver to ~nv~ and my monitor to
generic 1280x1024 and then
#+BEGIN_SRC sh
su -c "init 3"
# [log in]
su -c "init 5"
#+END_SRC
got me the right resolution again. However the ~nv~ driver is just a
little too basic, so I thought I'd try the same thing with the
proprietary driver, so I did everything exactly as before, only I used
the driver ~nvidia~ instead of ~nv~.
Now again X wouldn't start at all, so I ran ~livna-config-display -a~ to
get it to my old low-res configuration, and then I tried it a third
time, this time using the ~nouveau~ driver (which I've heard is better
then ~nv~) and that worked!
I know that supposedly you're also able to use ~xorg.conf~ to set
certain Modes values for your display, but this didn't do anything for
me at all in fedora, did help me in ubuntu, but then there I got the
weirdest resolution.
*finally* I can look at a normal screen again.
Now I should get going to work, I'm gonna be really late (this really
bugged me!)

View file

@ -1,48 +0,0 @@
#+TITLE: mod\_rewrite with Fedora 10 and ISPConfig for WordPress
#+DATE: 2009-12-09 10:33
#+TAGS: apache2 fedora ispconfig mod_rewrite
This relates to Fedora 10 and ISPConfig 3.0.1 set up as described in
[[http://www.howtoforge.org/perfect-server-fedora-10-ispconfig-3][this HowtoForge post]].
One of my colleagues recently got interested in offering our clients
Wordpress as a content management system, so he's been trying it out.
Yesterday he found out that if he wanted to change the permalink style
in Wordpress he needed write access to =.htaccess=, which he didn't have
because the user rights haven't been set up very well there.
So I gave him write access by using
#+BEGIN_SRC sh
chown apache:apache .htaccess
#+END_SRC
Unfortunately this resulted in a 500 Interal Server Error.
Looking at the error log for the website I tried this for it let me
know that =RewriteEngine= directives were not allowed in the =.htaccess=.
Since I didn't want to mess with the base configurations of ISPConfig
I started looking around for other options. Eventually I found that I
had to add something similar to this to the Apache directives field
under options under the website's settings
#+BEGIN_SRC text
<IfModule mod_rewrite.c>
<Directory /var/www/[sitename]/web/>
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</Directory>
</IfModule>
#+END_SRC
Of course ~[sitename]~ should be replaced with the name of your website.
It all works after I restarted the apache server myself, but I do not
know if that is completely necessary. Also it might take a few seconds
before ISPConfig finishes editing the configuration file.

View file

@ -1,30 +0,0 @@
#+TITLE: Not as perfect
#+DATE: 2012-12-01 16:01
#+LINK: emacs http://gnu.org/software/emacs/
#+LINK: gnus http://gnus.org
#+LINK: gwene http://gwene.org
#+LINK: unison http://www.cis.upenn.edu/~bcpierce/unison/
* Unexpected
I thought that the [[emacs][GNU Emacs]] + [[gnus][Gnus]] + [[gwene][Gwene]] + [[unison]] solution would
be near perfect, but it seems that it is, unfortunately, not
entirely the case.
* A problem
It seems that there is either something wrong with [[gwene]], or with
my connection to the [[gwene]] and [[gnus]] server.
The problem is that I'll add some RSS feed to [[gwene]] and it *will*
get registered and tell me it will be filled in a few minutes, but
then even days later they'll still not be available in the group
list.
I haven't found any reason why, they're not crazy feeds, I do get
other new groups (so it's not all of them), but it's annoying.
* Next
I think I'll start looking at other solutions again. Too bad,
because the feeds that are working are working really well for me.

View file

@ -1,22 +0,0 @@
#+TITLE: Removing a service manually in Windows Server 2008
#+DATE: 2009-11-09 12:24
#+TAGS: services windows
I was writing a test Windows Service and accidentally removed it
through the Programs and Features dialog, which removes the files, but
doesn't actually remove the service from the service list. So when I
tried to install the 2nd version of this test service it was
complaining that it already existed.
I looked around a little and found that I could delete the Service
from the registry in
~HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\[YourService]~. I
deleted the key (the little folder thingy) and it did show some
change, but my service was still there and the newer version still
wouldn't install.
After a little more looking around I found out that to fix it I could
use ~sc delete [YourService]~ to fix it. And it did!
Next time, though, I really should use the installer I used to install
it to remove it...

View file

@ -1,49 +0,0 @@
#+TITLE: Code Vault
Here we have some code snippets that I no longer (intend to) use, but
might still need (to look at) at some point in time.
* Jabber urgency and libnotify
This piece of code sends a message through ~libnotify~ and sets a
window urgency hint when a new message is received.
#+BEGIN_SRC emacs-lisp
(defvar jabber-activity-jids-count 0)
(defun jabber-urgency-hint ()
(let ((count (length jabber-activity-jids)))
(unless (= jabber-activity-jids-count count)
(if (zerop count)
(x-urgency-hint (selected-frame) nil)
(x-urgency-hint (selected-frame) t))
(setq jabber-activity-jids-count count))))
(defun libnotify-jabber-notify (from buf text proposed-alert)
"(jabber.el hook) Notify of new Jabber chat messages via libnotify"
(when (or jabber-message-alert-same-buffer
(not (memq (selected-window) (get-buffer-window-list buf))))
(if (jabber-muc-sender-p from)
(notify-send (format "(PM) %s"
(jabber-jid-displayname
(jabber-jid-user from)))
(format "%s: %s" (jabber-jid-resource from) text)))
(notify-send (format "%s: " (jabber-jid-displayname from))
(format "%.20s" text))))
(add-hook 'jabber-activity-update-hook 'jabber-urgency-hint)
(add-hook 'jabber-alert-message-hooks 'libnotify-jabber-notify)
#+END_SRC
* Show symbol instead of ~lambda~
#+BEGIN_SRC emacs-lisp
(defun oni:pretty-lambdas ()
"Show a lambda sign where the world `lambda' is found."
(font-lock-add-keywords
nil `(("(?\\(\\<lambda\\>\\)[ :]"
(0 (progn
(compose-region (match-beginning 1)
(match-end 1)
?λ)))))))
#+END_SRC

View file

@ -1,7 +0,0 @@
#+TITLE: Orgtpl
* What
Since we already create both HTML *and* XML templates in django, why
shouldn't we be able to do the same with org. Create a template that
creates an org file that can easily be viewed in emacs.

View file

@ -1,5 +1,5 @@
#+TITLE: ryuslash.org #+TITLE: ryu/
#+OPTIONS: toc:nil num:nil author:nil email:nil creator:nil #+OPTIONS: toc:nil
#+LANGUAGE: en #+LANGUAGE: en
#+STARTUP: showall #+STARTUP: showall
@ -11,10 +11,13 @@
</script> </script>
#+end_html #+end_html
- [[http://ryuslash.org/][Front page]] - [[http://ryuslash.org/][Home]]
- [[http://blog.ryuslash.org/][Blog]]
- [[http://code.ryuslash.org][Code]] - [[http://code.ryuslash.org][Code]]
- [[http://ryuslash.org/mediagoblin/][Pictures]]
* About * About
I'm a programming, free software and GNU/Linux enthusiast. I'm also I'm a programming, free software and GNU/Linux enthusiast. I'm also
a programmer professionally, so that works out well. a programmer professionally, so that works out well.
@ -23,52 +26,13 @@
[[http://www.archlinux.org][Archlinux]] after trying [[http://www.ubuntu.com][Ubuntu]], [[http://fedoraproject.org][Fedora]] and [[http://zenwalk.org][Zenwalk]]. I have been using [[http://www.archlinux.org][Archlinux]] after trying [[http://www.ubuntu.com][Ubuntu]], [[http://fedoraproject.org][Fedora]] and [[http://zenwalk.org][Zenwalk]]. I have been using
[[emacs][GNU Emacs]] since not long after switching over to GNU/Linux. [[emacs][GNU Emacs]] since not long after switching over to GNU/Linux.
* Posts
#+begin_src emacs-lisp :exports results :results list
(defun file-to-data (file)
(unless (or (string= file ".") (string= file "..") (string= file "index.org"))
(let (title date)
(with-temp-buffer
(insert-file (concat "/home/slash/var/src/orgweb/site/blog/" file))
(goto-char (point-min))
(re-search-forward "^#\\+TITLE: \\(.*\\)$")
(setq title (buffer-substring-no-properties
(match-beginning 1) (match-end 1)))
(goto-char (point-min))
(re-search-forward "^#\\+DATE: \\(.*\\)$")
(setq date (buffer-substring-no-properties
(match-beginning 1) (match-end 1))))
(list date (concat "[[file:blog/" file "][" title "]]")))))
(let ((posts (mapcar #'cadr
(sort
(delete nil
(mapcar
#'file-to-data
(directory-files
"/home/slash/var/src/orgweb/site/blog")))
(lambda (el1 el2) (not (string-lessp (car el1)
(car el2))))))))
(when (> (length posts) 10)
(setcdr (nthcdr 9 posts) '("[[file:blog/index.org][More...]]")))
posts)
#+end_src
* Projects * Projects
- [[file:projects/eye-on-manga.org][eye-on-manga]] :: A manga collection manager for my N900 phone.
- [[file:projects/gitto.org][gitto]] :: A utility for keeping track of my git repositories'
status.
- [[file:projects/ryuslash.org][ryuslash.org]] :: My front page.
- [[file:projects/dispass.el.org][dispass.el]] :: A wrapper for [[http://dispass.babab.nl][DisPass]]. - [[file:projects/dispass.el.org][dispass.el]] :: A wrapper for [[http://dispass.babab.nl][DisPass]].
- [[file:projects/dvdroid.org][DVDroid]] :: A DVD collection application for the Android operating
system.
- [[file:projects/eye-on-manga.org][eye-on-manga]] :: A manga collection manager for my N900 phone.
- [[file:projects/git-auto-commit-mode.org][git-auto-commit-mode]] :: A minor mode for automatically committing - [[file:projects/git-auto-commit-mode.org][git-auto-commit-mode]] :: A minor mode for automatically committing
changes to a file. changes to a file.
- [[file:projects/org-blog.org][org-blog]] :: A continuation of David O'Toole's ~org-blog~ module. - [[file:projects/gitto.org][gitto]] :: A utility for keeping track of my git repositories'
- [[file:projects/tron-theme.org][tron-theme]] :: A theme inspired by the Tron: Legacy movie. status.
* Profiles
- [[https://diasp.org/u/ryuslash][Diasp*]]
- [[http://gitorious.org/%7Eryuslash][Gitorious]]
- [[http://identi.ca/ryuslash][identi.ca]]
- [[http://www.emacswiki.org][EmacsWiki]]
- [[http://github.com/ryuslash][github]]
- [[http://www.goodreads.com/ryuslash][goodreads]]

View file

@ -1,18 +0,0 @@
* About
** bint -- Bad Image Naming Tool
marijn_a:
dit is wat ik wil dat het doet
* ik selecteer een map met plaatjes erin.
* programma scant alle mappen in die map voor plaatjes
* nadat ie klar is, laat ie filepath zien en het 1ste plaatje
* vraagt om de naam van het plaatje
* ik type een naam in en druk enter
* volgende plaatje in beeld
* ik typ naam en enter
* etc
zie het als een image renamer
dus eerst heet het plaatje 35y6795634.jpg
dan type je in de balk: THE ALIENS INVADED!!
en dan renamed ie naar THE ALIENS INVADED!!.jpg

View file

@ -1,31 +0,0 @@
#+TITLE: clever-mode
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" />
#+LINK_UP: ../index.html
#+LINK_HOME: ../index.html
#+INCLUDE: "../header.org" :lines "1-4"
* About
~clever-mode~ is a GNU Emacs[fn:emacs:http://gnu.org/software/emacs/]
major mode for editing Smarty[fn:smarty:http://www.smarty.net] templates.
** Why
The only modes for editing Smarty[fn:smarty] templates are either
outdated or need MuMaMo, and I seriously dislike MuMaMo.
Also, I have some Emacs[fn:emacs] projects now, but no major mode
yet, and I want to learn.
** Features
~clever-mode~ is based on HTML mode, although Smarty[fn:smarty] is
not limited to HTML, that is what it is used for most (at least by me).
* Usage
Since it only has some syntax highlighting at the moment usage only
consists of getting it, installing it and enabling it.
#+INCLUDE: "../header.org" :lines "5-8"

View file

@ -1,9 +1,7 @@
#+TITLE: dispass.el #+TITLE: dispass.el
#+LINK_UP: ../index.html #+LINK: src http://code.ryuslash.org/cgit.cgi/emacs/dispass.el/
#+LINK_HOME: http://ryuslash.org #+LINK: tar_gz http://code.ryuslash.org/cgit.cgi/emacs/dispass.el/snapshot/dispass.el-master.tar.gz
#+LINK: src https://github.com/ryuslash/dispass.el #+LINK: zip http://code.ryuslash.org/cgit.cgi/emacs/dispass.el/snapshot/dispass.el-master.zip
#+LINK: tar_gz https://github.com/ryuslash/dispass.el/tarball/master
#+LINK: zip https://github.com/ryuslash/dispass.el/zipball/master
#+LINK: dispass http://dispass.babab.nl #+LINK: dispass http://dispass.babab.nl
#+STARTUP: showall #+STARTUP: showall
@ -22,37 +20,86 @@
[[dispass][DisPass]] is a passphrase generator. ~dispass.el~ is an [[emacs][Emacs]] wrapper [[dispass][DisPass]] is a passphrase generator. ~dispass.el~ is an [[emacs][Emacs]] wrapper
for [[dispass][DisPass]]. for [[dispass][DisPass]].
** Features | Status | Active |
| Language | Emacs Lisp |
| License | ISC |
- Copy passwords directly to the clipboard, no need for manual * Why?
selection and copying.
- Specify the length of the passphrase by using a numeric prefix
argument.
** Requirements [[dispass][DisPass]] is written by a [[http://babab.nl][friend]] of mine and I really liked the idea
of it. But the interface he had for it was not to my liking, it
was not Emacs.
- [[emacs][Emacs]] ** Why the license?
- [[dispass][DisPass]]
Since [[dispass][DisPass]] uses the ISC license, I thought it would be polite
to use the same license.
* Features
- Copy passwords directly to the clipboard, no need for manual
selection and copying.
- Specify the length of the passphrase by using a numeric prefix
argument.
- Input completion for labels.
- Some label management (adding, removing).
* Dependencies
- [[emacs][Emacs]] :: Probably version 24+, since that is what it's being
developed on.
- [[dispass][DisPass]] :: At least v0.1a8, best is a recent git version.
* Download
There are download links for a ~tar.gz~ and a ~zip~ file of the latest
development version at the top of this page.
~dispass.el~ is both in the [[http://marmalade-repo.org/][Marmalade]] and the [[http://melpa.milkbox.net/][MELPA]] repo. The MELPA
version is a direct checkout of the latest development version and
the Marmalade version is an older, possibly more stable, version.
* Install
Once you have [[Download][downloaded]] ~dispass.el~ you have at least 2 choices for
installation.
** package.el
If you have Emacs v24+ or [[http://tromey.com/elpa/install.html][package.el]] and either Marmalade or MELPA
configured, you can just:
#+BEGIN_SRC emacs-lisp
(package-install "dispass")
#+END_SRC
** manual
Otherwise you have to [[Download][dowload]] it and then put it somewhere in your
=load-path=, or add that location to your =load-path=:
#+begin_src emacs-lisp
(add-to-list 'load-path "~/location/of/dispass.el")
#+end_src
After which you can either ~require~ the package in your Emacs init
file:
#+BEGIN_SRC emacs-lisp
(require 'dispass)
#+END_SRC
Or set-up some autoloads:
#+BEGIN_SRC emacs-lisp
(autoload 'dispass "dispass" nil t)
(autoload 'dispass-create "dispass" nil t)
(autoload 'dispass-list-labels "dispass" nil t)
#+END_SRC
* Usage * Usage
First place ~dispass.el~ somewhere in your load path, or add its Once installed you can use ~dispass~ to (re)generate passphrases,
location to your load path: ~dispass-create~ to generate a new one (it asks for confirmation on
the password) and ~dispass-list-labels~ to view a list of stored
#+begin_src emacs-lisp labels and manage them a little.
(add-to-list 'load-path "~/location/of/dispass.el")
#+end_src
Then you need to load it up:
#+begin_src emacs-lisp
(require 'dispass)
#+end_src
After that everything should be simple, either call =dispass= or
=dispass-create= to generate the passphrase. =dispass-create= will ask
for your password twice, for confirmation purposes.
To specify a length of the generated passphrase, use numeric prefix
arguments: =C-8 M-x dispass <RET>= to create a passphrase of 8
characters.

66
site/projects/dvdroid.org Normal file
View file

@ -0,0 +1,66 @@
#+TITLE: DVDroid
#+LINK: src http://code.ryuslash.org/cgit.cgi/dvdroid/
#+LINK: tar_gz http://code.ryuslash.org/cgit.cgi/dvdroid/snapshot/dvdroid-master.tar.gz
#+LINK: zip http://code.ryuslash.org/cgit.cgi/dvdroid/snapshot/dvdroid-master.zip
#+STARTUP: showall
#+begin_html
<script src="/keyjs.js" type="text/javascript"></script>
<script type="text/javascript">
keyjs_initialize({ "u": [ "keyjs_goto", "../index.html" ],
"h": [ "keyjs_goto", "http://ryuslash.org" ] });
</script>
#+end_html
#+INCLUDE: "dlmenu.inc"
* About
DVDroid is a DVD collection application for the Android operating
system.
| Status | On-hold |
| Language | Java |
| License | GPLv3 |
* Why?
Very similar to [[file:eye-on-manga.org][Eye on Manga]], we keep forgetting which DVDs we have
and want when we're in the store.
* Features
- Keep a list of DVDs you have.
- Keep a list of DVDs you still need to watch.
- Keep a list of DVDs you want to buy.
* Dependencies
- Android :: Version 4.1 or higher.
* Download
There are download links for a ~tar.gz~ and a ~zip~ file of the latest
development version at the top of this page.
* Install
In order to install it you need to have the Android Java
Development Kit installed, installing it is then a matter of
building/installing it like any other development package.
* Usage
Start it up, you will have a list of the DVDs you own, which will
be empty. In the top right corner there should be a button to add
new titles to this list, here you can also specify if you have seen
it or if you still want to get it.
There is also a search button there that helps you look through
your collection.
To change the status of any title you can select it and edit and
delete buttons should show up at the top of your screen.
Use the menu button to switch "contexts", wish list, collection
and watch list.

View file

@ -1,10 +1,7 @@
#+TITLE: eye-on-manga #+TITLE: eye-on-manga
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" /> #+LINK: src http://code.ryuslash.org/cgit.cgi/eye-on-manga/
#+LINK_UP: ../index.html #+LINK: tar_gz http://code.ryuslash.org/cgit.cgi/eye-on-manga/snapshot/eye-on-manga-master.tar.gz
#+LINK_HOME: http://ryuslash.org #+LINK: zip http://code.ryuslash.org/cgit.cgi/eye-on-manga/snapshot/eye-on-manga-master.zip
#+LINK: src https://github.com/ryuslash/eye-on-manga
#+LINK: tar_gz https://github.com/ryuslash/eye-on-manga/tarball/master
#+LINK: zip https://github.com/ryuslash/eye-on-manga/zipball/master
#+STARTUP: showall #+STARTUP: showall
#+begin_html #+begin_html
@ -22,16 +19,43 @@
~eye-on-manga~ is a manga collection management application for the ~eye-on-manga~ is a manga collection management application for the
Nokia N900. Nokia N900.
** Features | Status | On-hold |
| Language | C |
| License | GPLv2 |
- Create a list of manga. * Why?
- Keep track of which volumes have been acquired and read.
- Edit wrongfully entered entries.
- Easily mark a volume as acquired or read.
** Requirements I just keep forgetting which volumes of which manga I have.
- A Nokia N900 with fairly recent packages should be fine. * Features
- Create/maintain a list of manga.
- Keep track of which volumes have been acquired and read.
* Requirements
- A Nokia N900, with Maemo, with fairly recent packages should be
fine.
* Download
I'll upload a package as soon as I can.
Until then, if you have the maemo development environment set-up
you can create your own. Use the ~FREMANTLE_ARMEL~ configuration in
scratchbox and create it with:
#+BEGIN_EXAMPLE
$ dpkg-buildpkg -rfakeroot
#+END_EXAMPLE
* Install
Once you have aqcuired a package, get it to your phone and:
#+BEGIN_EXAMPLE
$ dpkg -I eye-on-manga-*.deb
#+END_EXAMPLE
* Usage * Usage

View file

@ -1,10 +1,7 @@
#+TITLE: git-auto-commit-mode #+TITLE: git-auto-commit-mode
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" /> #+LINK: src http://code.ryuslash.org/cgit.cgi/emacs/git-auto-commit-mode/
#+LINK_UP: ../index.html #+LINK: tar_gz http://code.ryuslash.org/cgit.cgi/emacs/git-auto-commit-mode/snapshot/git-auto-commit-mode-master.tar.gz
#+LINK_HOME: http://ryuslash.org #+LINK: zip http://code.ryuslash.org/cgit.cgi/emacs/git-auto-commit-mode/snapshot/git-auto-commit-mode-master.zip
#+LINK: src https://github.com/ryuslash/git-auto-commit-mode
#+LINK: tar_gz https://github.com/ryuslash/git-auto-commit-mode/tarball/master
#+LINK: zip https://github.com/ryuslash/git-auto-commit-mode/zipball/master
#+STARTUP: showall #+STARTUP: showall
#+begin_html #+begin_html
@ -19,73 +16,107 @@
* About * About
~git-auto-commit-mode~ is a minor mode for GNU ~git-auto-commit-mode~ is a minor mode for GNU Emacs that, when
Emacs[fn::http://gnu.org/software/emacs/] that, when enabled, tries enabled, tries to commit changes to a file after every save. It can
to commit changes to a file after every save. It can also try to also try to push to the default upstream.
push to the default upstream.
** Features | Status | On-hold |
| Language | Emacs Lisp |
| Licennse | GPLv3 |
- Automatically commit changes to a file after each save. * Features
- The commit message will contain the file name relative to the - Automatically commit changes to a file after each save.
repository root.
- Optionally, automatically push commits to the default upstream. - The commit message will contain the file name relative to the
repository root.
** Requirements - Optionally, automatically push commits to the default upstream.
These should be mostly obvious. * Requirements
- [[http://gnu.org/software/emacs][GNU Emacs]] - [[http://gnu.org/software/emacs][GNU Emacs]]
- [[http://git-scm.com][git]] - [[http://git-scm.com][git]]
* Download
There are download links for a ~tar.gz~ and a ~zip~ file of the latest
development version at the top of this page.
~git-auto-commit-mode~ is in the [[http://marmalade-repo.org/][Marmalade]] repo.
* Install
Once you have [[Download][downloaded]] ~git-auto-commit-mode~ you have at least 2
choices for installation.
** package.el
If you have Emacs v24+ or [[http://tromey.com/elpa/install.html][package.el]] and Marmalade configured, you
can just:
#+BEGIN_SRC emacs-lisp
(package-install "git-auto-commit-mode")
#+END_SRC
** manual
Otherwise you have to [[Download][dowload]] it and then put it somewhere in your
=load-path=, or add that location to your =load-path=:
#+begin_src emacs-lisp
(add-to-list 'load-path "~/location/of/git-auto-commit-mode")
#+end_src
After which you can either ~require~ the package in your Emacs init
file:
#+BEGIN_SRC emacs-lisp
(require 'git-auto-commit-mode)
#+END_SRC
Or set-up some autoloads:
#+BEGIN_SRC emacs-lisp
(autoload 'git-auto-commit-mode "git-auto-commit-mode" nil t)
#+END_SRC
* Usage * Usage
To be able to use it you need to put it somewhere in your
~load-path~ and load it, for example:
#+begin_src emacs-lisp
(add-to-list 'load-path "~/path/to/git-auto-commit-mode.el")
(auto load 'git-auto-commit-mode "git-auto-commit-mode")
#+end_src
** Automatically commit
There are a few ways this could be used: There are a few ways this could be used:
*** As file-local variable ** As file-local variable
This is the way I use it and I wanted to use it. Any file that you This is the way I use it and I wanted to use it. Any file that you
would like to have automatically committed upon saving gets this would like to have automatically committed upon saving gets this
prop-line: prop-line:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
;; -*- eval: (git-auto-commit-mode 1) -*- ;; -*- eval: (git-auto-commit-mode 1) -*-
#+END_SRC #+END_SRC
Or, if you're in anything older than emacs 24: Or, if you're in anything older than emacs 24:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
;; -*- mode: git-auto-commit -*- ;; -*- mode: git-auto-commit -*-
#+END_SRC #+END_SRC
*** As a directory-local variable ** As a directory-local variable
Put the following in a ~.dir-locals.el~ file in any directory where Put the following in a ~.dir-locals.el~ file in any directory where
you want to enable ~git-auto-commit-mode~ for *all* files: you want to enable ~git-auto-commit-mode~ for *all* files:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
((nil . ((git-auto-commit-mode . t)))) ((nil . ((git-auto-commit-mode . t))))
#+END_SRC #+END_SRC
*** As a hook ** As a hook
I doubt this will ever really be useful, but it is possible: I doubt this will ever really be useful, but it is possible:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(add-hook 'some-hook 'git-auto-commit-mode) (add-hook 'some-hook 'git-auto-commit-mode)
#+END_SRC #+END_SRC
** Automatically push ** Automatically push

View file

@ -1,10 +1,8 @@
#+TITLE: gitto #+TITLE: gitto
#+LINK_UP: ../index.html #+LINK: src http://code.ryuslash.org/cgit.cgi/gitto/
#+LINK_HOME: http://ryuslash.org #+LINK: tar_gz http://code.ryuslash.org/cgit.cgi/gitto/snapshot/gitto-master.tar.gz
#+LINK: src https://github.com/ryuslash/gitto #+LINK: zip http://code.ryuslash.org/cgit.cgi/gitto/snapshot/gitto-master.zip
#+LINK: tar_gz https://github.com/ryuslash/gitto/tarball/master #+STARTUP: showall
#+LINK: zip https://github.com/ryuslash/gitto/zipball/master
#+STARTUP: show all
#+begin_html #+begin_html
<script src="/keyjs.KS" type="text/javascript"></script> <script src="/keyjs.KS" type="text/javascript"></script>
@ -21,15 +19,32 @@
~gitto~ is a utility written in [[http://www.gnu.org/software/guile/][Guile scheme]] to help me keep track of ~gitto~ is a utility written in [[http://www.gnu.org/software/guile/][Guile scheme]] to help me keep track of
the status of my git repositories. the status of my git repositories.
** Features | Status | On-hold |
| Language | Scheme (Guile) |
| License | GPLv3 |
- Show a list of how many commits to pull or push and whether or * Features
not the working directory of that repository is dirty.
** Requirements - Show a list of how many commits to pull or push and whether or
not the working directory of that repository is dirty.
- [[http://www.gnu.org/software/guile/][Guile]] v2.0.x * Requirements
- [[http://git-scm.com][git]]
- [[http://www.gnu.org/software/guile/][Guile]] v2.0.x
- [[http://git-scm.com][git]]
* Download
There are download links for a ~tar.gz~ and a ~zip~ file of the latest
development version at the top of this page.
* Install
To install this should be enough:
#+BEGIN_EXAMPLE
$ make && make install
#+END_EXAMPLE
* Usage * Usage

View file

@ -1,103 +0,0 @@
#+TITLE: org-blog
#+LINK_UP: ../index.html
#+LINK_HOME: http://ryuslash.org
#+LINK: src https://github.com/ryuslash/org-blog
#+LINK: tar_gz https://github.com/ryuslash/org-blog/tarball/master
#+LINK: zip https://github.com/ryuslash/org-blog/zipball/master
#+STARTUP: showall
#+begin_html
<script src="/keyjs.KS" type="text/javascript"></script>
<script type="text/javascript">
keyjs_initialize({ "u": [ "keyjs_goto", "../index.html" ],
"h": [ "keyjs_goto", "http://ryuslash.org" ] });
</script>
#+end_html
#+INCLUDE: "dlmenu.inc"
* About
~org-blog~ is a blog exporter for ~org-mode~ written by David
O'Toole in 2006. ~org-mode~ has since then changed a bit and it
seemed that it no longer worked. It also seems to be the only
viable/acceptable pure-org solution for me, so I'm trying to revive
it.
** Features
- Pure ~org-mode~, all you need is some setup and you can use it like
any other exporting function.
- Separate drafts from posts.
- Generate an index of posts.
- Rudimentary RSS support.
** Requirements
- GNU Emacs
- ~org-mode~
* Usage
** Setup
Since I've adapted it to work as a normal publishing function for
org, setting it up is a lot like any other publishing project:
#+BEGIN_SRC emacs-lisp
(setq org-publish-project-alist
'(("my-blog"
:base-directory "~/location/to/org/files/"
:publishing-directory "/place/to/export/to/"
:base-extension "org"
:publishing-function org-publish-org-to-blog
:blog-title "some title"
:blog-description "some description"
:blog-export-rss t
:index-title "oni blog"
:recursive nil
:table-of-contents nil)))
#+END_SRC
Most of these options are very normal project settings and can be
read about in the documentation for the variable
~org-publish-project-alist~. The ~blog-title~, ~blog-description~,
~blog-export-rss~ and ~index-title~, however, are used by ~org-blog~.
- ~blog-title~ :: This setting is used when exporting RSS. It sets the
~title~ in the XML output.
- ~blog-description~ :: This setting is also used when exporting
RSS. It sets the ~description~ in the XML output.
- ~blog-export-rss~ :: Whether or not you would like an RSS feed to be
exported.
- ~index-title~ :: This is used as the title of the blog's index page.
Apart from these there are also 2 other settings that need your
attention:
#+BEGIN_SRC emacs-lisp
(setq org-blog-directory "~/path/to/blog/org/files/")
(setq org-blog-unfinished-directory "~/path/to/drafts/")
#+END_SRC
These don't have any relevance to the exporting and publishing
functions, but they're used by the ~org-blog-new-post~ and
~org-blog-finish-post~ functions, which help with creating new posts.
** Create new post
To create a new post, just call =M-x org-blog-new-post= and start
writing.
** Finish a post
When you're done writing and would like to set it up to be
published, just call =M-x org-blog-finish-post=.
** Publish
To publish just use any of the ~org-publish-*~ functions as you would
any other org site.

View file

@ -1,85 +0,0 @@
#+TITLE: org
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" />
#+LINK_UP: ../index.html
#+LINK_HOME: ../index.html
#+OPTIONS: H:5
* About
No I don't mean that I have anything to do with [[http://orgmode.org][org-mode]], but trying
to find a nice and effective structure to my org files is an ongoing
project for me.
* Organizational
** inbox.org
The ~inbox.org~ file is used as, surprise surprise, an
inbox. Whenever ~org-capture~ is used to create a new task,
appointment or note, it is placed in this file, from here it should
be distributed to one of the other org files.
- appointments
New appointments that should be placed in one of the other files
are first placed here.
- notes
New notes that should be placed in one of the other files are
first placed here.
- tasks
New tasks that should be placed in one of the other files are
first placed here.
** personal.org
The ~personal.org~ file is used for private tasks, appointments and
notes. Not specifically actually private, just not belonging to any
of the other org files.
- appointments
Appointments of a personal nature, not specifically about any of
the other org files.
- birthdays
Birthdays of friends and family are noted here.
- bookmarks
Some very interesting links that I should keep an eye on.
- notes
Notes about personal things should be placed here.
- rss
I have a single RSS feed that I load with org, this is a feed
from [[http://www.myepisodes.com][MyEpisodes]] which tells me when new episodes of shows I
watch air.
- tasks
Tasks of a personal nature, not belonging to any of the other
files/categories.
** contacts.org
Just keeps my contacts.
** projects
Org files about projects I work on.
*** any org files
** work
Org files about work-related things.

View file

@ -1,59 +0,0 @@
#+TITLE: ryuslash.org
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" />
#+LINK_UP: ../index.html
#+LINK_HOME: http://ryuslash.org
#+LINK: python http://www.python.org
#+LINK: django http://djangoproject.com
#+LINK: feedparser http://code.google.com/p/feedparser/
#+LINK: south http://south.aeracode.org/
#+LINK: markdown http://packages.python.org/Markdown/
#+LINK: src https://github.com/ryuslash/ryuslash.org
#+LINK: tar_gz https://github.com/ryuslash/ryuslash.org/tarball/master
#+LINK: zip https://github.com/ryuslash/ryuslash.org/zipball/master
#+STARTUP: showall
#+begin_html
<script src="/keyjs.js" type="text/javascript"></script>
<script type="text/javascript">
keyjs_initialize({ "u": [ "keyjs_goto", "../index.html" ],
"h": [ "keyjs_goto", "http://ryuslash.org" ] });
</script>
#+end_html
#+INCLUDE: "dlmenu.inc"
* About
~ryuslash.org~ is the project of the [[http://ryuslash.org][front page]] of my website. I have
noticed, though, that apart from the /design/ and the initial data,
there is nothing really specific to my about this project.
Right now all it really does is show a bunch of feeds on a page.
** Features
- Define multiple RSS feeds to load news items from.
- Define relative paths for the xml and profile linked to a feed.
- Group feeds in categories.
- Add comments to any post that comes in.
- Generate feeds: One for all posts, one for all comments.
** Requirements
~ryuslash.org~ uses the following modules and applications:
- [[python][Python]] 2.6.x or 2.7.x
- [[django][Django]] 1.3
- [[south][South]] 0.7.4
- [[feedparser][Feedparser]] 5.1.1
- [[markdown][Markdown]] 2.1.1
* Usage
It is a normal django application, so normal django deployment
methods should work.
** Configuration
The feeds that are loaded are defined in ~local_settings.py~. An
example of how to do this is located in ~local_settings.py.example~.

View file

@ -1,28 +0,0 @@
#+TITLE: git-auto-commit-mode
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" />
#+LINK_UP: ../
#+LINK_HOME: http://ryuslash.org
#+LINK: src http://code.ryuslash.org/cgit.cgi/tron-theme/
#+LINK: tar_gz http://code.ryuslash.org/cgit.cgi/tron-theme/snapshot/tron-theme-master.tar.gz
#+LINK: zip http://code.ryuslash.org/cgit.cgi/tron-theme/snapshot/tron-theme-master.zip
#+STARTUP: showall
#+begin_html
<script src="/keyjs.js" type="text/javascript"></script>
<script type="text/javascript">
keyjs_initialize({ "u": [ "keyjs_goto", "../index.html" ],
"h": [ "keyjs_goto", "http://ryuslash.org" ] });
</script>
#+end_html
#+INCLUDE: "dlmenu.inc"
* About
~tron-theme~ is a theme loosely based on the visual style of the Tron:
Legacy movie. It came about after watching the movie and finding the
style of it irresistible.
** Requirements
- [[http://gnu.org/software/emacs][GNU Emacs]] v24 or later.