Rewrite and hopefully improve upon a big chunk of the site

This commit is contained in:
Tom Willemsen 2012-07-01 14:17:54 +02:00
parent 7fa6c1d159
commit d2efe59b06
6 changed files with 224 additions and 181 deletions

View file

@ -1,14 +1,20 @@
#+TITLE: oni org #+TITLE: oni org
#+STYLE: <link rel="stylesheet" type="text/css" href="stylesheet.css" />
#+OPTIONS: toc:nil num:nil author:nil email:nil creator:nil #+OPTIONS: toc:nil num:nil author:nil email:nil creator:nil
#+LANGUAGE: en #+LANGUAGE: en
#+LINK_HOME: http://ryuslash.org #+LINK_HOME: http://ryuslash.org
#+LINK_UP: http://ryuslash.org #+LINK_UP: http://ryuslash.org
#+STARTUP: showall #+STARTUP: showall
@<div class="dlmenu"> #+begin_html
[[http://ryuslash.org/][Front page]] || [[file:blog/index.org][Blog]] <script src="/keyjs.js" type="text/javascript"></script>
@</div> <script type="text/javascript">
keyjs_initialize({ "u": [ "keyjs_goto", "http://ryuslash.org" ],
"h": [ "keyjs_goto", "http://ryuslash.org" ] });
</script>
#+end_html
- [[http://ryuslash.org/][Front page]]
- [[file:blog/index.org][Blog]]
* About * About
@ -29,17 +35,31 @@
- [[http://gitorious.org/%7Eryuslash][Gitorious]] - [[http://gitorious.org/%7Eryuslash][Gitorious]]
- [[http://identi.ca/ryuslash][identi.ca]] - [[http://identi.ca/ryuslash][identi.ca]]
- [[http://www.emacswiki.org][EmacsWiki]] - [[http://www.emacswiki.org][EmacsWiki]]
- [[http://github.com/ryuslash][github]]
* Configuration files - [[http://www.goodreads.com/ryuslash][goodreads]]
I'm working on putting all of my configuration files (dotfiles) in
~org-mode~, with ~org-babel~'s literate programming support. [[http://org.ryuslash.org/dotfiles/][Here]] is
what I have so far.
* Projects * Projects
- [[file:projects/git-auto-commit-mode.org][git-auto-commit-mode]] - [[file:projects/git-auto-commit-mode.org][git-auto-commit-mode]] :: An Emacs minor mode for automatically
- [[file:projects/ryuslash.org][ryuslash.org]] committing changes to a file.
- [[file:projects/eye-on-manga.org][eye-on-manga]] - [[file:projects/ryuslash.org][ryuslash.org]] :: My front page.
- [[file:projects/org-blog.org][org-blog]] - [[file:projects/eye-on-manga.org][eye-on-manga]] :: A manga collection manager for my N900 phone.
- [[file:projects/org.org][org]] - [[file:projects/org-blog.org][org-blog]] :: A continuation of David O'Toole's ~org-blog~ module for
emacs.
* Dotfiles
I'm working on putting all of my configuration files (dotfiles) in
~org-mode~, with ~org-babel~'s literate programming support.
- [[http://org.ryuslash.org/dotfiles/emacs/init.html][Emacs]] :: My favorite editor.
- [[http://org.ryuslash.org/dotfiles/Xdefaults/Xdefaults.html][Xdefaults]] :: Settings for multiple X programs.
- [[http://org.ryuslash.org/dotfiles/Xmodmap/Xmodmap.html][Xmodmap]] :: X keyboard and mouse preferences.
- [[http://org.ryuslash.org/dotfiles/diary/diary.html][Diary]] :: A diary (appointments) file for emacs.
- [[http://org.ryuslash.org/dotfiles/sawfish/rc.html][Sawfish]] :: A very cool window manager, especially if you like
emacs.
- [[Beets]] :: A nifty little digital music collection manager.
- [[http://org.ryuslash.org/dotfiles/cower/config.html][Cower]] :: A simple CLI for the [[https://aur.archlinux.org][Archlinux User Repository]].
- [[http://org.ryuslash.org/dotfiles/pentadactyl/pentadactylrc.html][Pentadactyl]] :: A firefox extension for vi-like key-bindings.
- [[http:://org.ryuslash.org/dotfiles/xinit/xinitrc.html][X init]] :: X initialization script.
- [[http://org.ryuslash.org/dotfiles/fish/config.html][Fish]] :: A pretty cool shell.

View file

@ -1,4 +1,4 @@
# -*- mode: org -*- # -*- mode: org -*-
@<div class="dlmenu"> - [[src][Browse Source]]
[[src][Browse Source]] || [[tar_gz][Download tar.gz]] || [[zip][Download zip]] - [[tar_gz][Download tar.gz]]
@</div> - [[zip][Download zip]]

View file

@ -1,12 +1,20 @@
#+TITLE: eye-on-manga #+TITLE: eye-on-manga
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" /> #+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" />
#+LINK_UP: ../index.html #+LINK_UP: ../index.html
#+LINK_HOME: ../index.html #+LINK_HOME: http://ryuslash.org
#+LINK: src https://github.com/ryuslash/eye-on-manga #+LINK: src https://github.com/ryuslash/eye-on-manga
#+LINK: tar_gz https://github.com/ryuslash/eye-on-manga/tarball/master #+LINK: tar_gz https://github.com/ryuslash/eye-on-manga/tarball/master
#+LINK: zip https://github.com/ryuslash/eye-on-manga/zipball/master #+LINK: zip https://github.com/ryuslash/eye-on-manga/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: "../header.org" :lines "1-4"
#+INCLUDE: "dlmenu.inc" #+INCLUDE: "dlmenu.inc"
* About * About
@ -14,20 +22,6 @@
~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.
** Why
I was always either standing in the shop, or at the
F.A.C.T.S. event, looking at and for manga, and I'd completely
forget which ones I needed to get and which ones I'd already read.
** How
~eye-on-manga~ is a simple application for the N900, it keeps a
list of manga in a SQLite database and makes it possible to edit
this data through a UI. You can tell it how many volumes a manga
should have and then it makes it easy to select which ones you've
aquired and which ones you've read.
** Features ** Features
- Create a list of manga. - Create a list of manga.
@ -35,4 +29,19 @@
- Edit wrongfully entered entries. - Edit wrongfully entered entries.
- Easily mark a volume as acquired or read. - Easily mark a volume as acquired or read.
#+INCLUDE: "../header.org" :lines "5-8" ** Requirements
- A Nokia N900 with fairly recent packages should be fine.
* Usage
When you start it up you will see a list of your manga, showing the
name, # acquired and # total. To add a new manga entry open the menu
by pressing on the application's title and click "New Manga". You
will then be prompted for the name and total number of books for
this manga.
If you press on one of the manga's names you will see its detail
view. Here you can change the information previously entered and
select the manga you'v acquired (left column) and the manga you've
read (right column).

View file

@ -1,60 +1,60 @@
#+TITLE: git-auto-commit-mode #+TITLE: git-auto-commit-mode
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" /> #+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" />
#+LINK_UP: ../index.html #+LINK_UP: ../index.html
#+LINK_HOME: ../index.html #+LINK_HOME: http://ryuslash.org
#+LINK: src https://github.com/ryuslash/git-auto-commit-mode #+LINK: src https://github.com/ryuslash/git-auto-commit-mode
#+LINK: tar_gz https://github.com/ryuslash/git-auto-commit-mode/tarball/master #+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 #+LINK: zip https://github.com/ryuslash/git-auto-commit-mode/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: "../header.org" :lines "1-4"
#+INCLUDE: "dlmenu.inc" #+INCLUDE: "dlmenu.inc"
* About * About
~git-auto-commit-mode~ is a minor mode for GNU Emacs[fn:: ~git-auto-commit-mode~ is a minor mode for GNU
http://gnu.org/software/emacs/] that, when enabled, adds and commits Emacs[fn::http://gnu.org/software/emacs/] that, when enabled, tries
a file after every save. to commit changes to a file after every save. It can also try to
push to the default upstream.
** Why
I thought of it when I was editing my configuration files. Most of
my changes in my configuration files are fairly simple and I would
like them immediately committed, I don't want to have to sift
through all the changes at a later point to figure out what I want
to commit when.
** How
~git-auto-commit-mode~ blindly calls
#+BEGIN_SRC bash
git add FILE
git commit -m "RELATIVE-FILE-PATH"
#+END_SRC
setting up the git repository correctly is the responsibility of
the user.
** Features ** Features
~git-auto-commit-mode~ only really has one feature: - Automatically commit changes to a file after each save.
- Automatically commit file to current git repository after saving. - The commit message will contain the file name relative to the
repository root.
- Optionally, automatically push commits to the default upstream.
** Requirements
These should be mostly obvious.
- [[http://gnu.org/software/emacs][GNU Emacs]]
- [[http://git-scm.com][git]]
* Usage * Usage
To be able to use it you need to put it somewhere in your To be able to use it you need to put it somewhere in your
~load-path~ and load it, for example: ~load-path~ and load it, for example:
#+NAME: .emacs.d #+begin_src emacs-lisp
#+BEGIN_SRC emacs-lisp
(add-to-list 'load-path "~/path/to/git-auto-commit-mode.el") (add-to-list 'load-path "~/path/to/git-auto-commit-mode.el")
(auto load 'git-auto-commit-mode "git-auto-commit-mode") (auto load 'git-auto-commit-mode "git-auto-commit-mode")
#+END_SRC #+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
@ -70,7 +70,7 @@
;; -*- 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:
@ -79,7 +79,7 @@
((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:
@ -87,4 +87,14 @@
(add-hook 'some-hook 'git-auto-commit-mode) (add-hook 'some-hook 'git-auto-commit-mode)
#+END_SRC #+END_SRC
#+INCLUDE: "../header.org" :lines "5-8" ** Automatically push
If you wish to push your changes each time the file is saved you
should set =gac-automatically-push-p= to =t=. This is a buffer local
variable, so you will have to put it in your dir-local or
file-local variables. Alternatively, if you're sure you can also
set the default value to =t=, like so:
#+begin_src emacs-lisp
(setq-default gac-automatically-push-p t)
#+end_src

View file

@ -1,11 +1,19 @@
#+TITLE: git-auto-commit-mode #+TITLE: git-auto-commit-mode
#+LINK_UP: ../index.html #+LINK_UP: ../index.html
#+LINK_HOME: ../index.html #+LINK_HOME: http://ryuslash.org
#+LINK: src https://github.com/ryuslash/org-blog #+LINK: src https://github.com/ryuslash/org-blog
#+LINK: tar_gz https://github.com/ryuslash/org-blog/tarball/master #+LINK: tar_gz https://github.com/ryuslash/org-blog/tarball/master
#+LINK: zip https://github.com/ryuslash/org-blog/zipball/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: "../header.org" :lines "1-4"
#+INCLUDE: "dlmenu.inc" #+INCLUDE: "dlmenu.inc"
* About * About
@ -16,21 +24,29 @@
viable/acceptable pure-org solution for me, so I'm trying to revive viable/acceptable pure-org solution for me, so I'm trying to revive
it. it.
** Why ** Features
As stated, it seemed to be out-of-date and packages like [[http://renard.github.com/o-blog/][o-blog]] and - Pure ~org-mode~, all you need is some setup and you can use it like
[[http://www.emacswiki.org/emacs/Blorg][blorg]] didn't work for me, and many others require some external any other exporting function.
tool to work. - Separate drafts from posts.
- Generate an index of posts.
- Rudimentary RSS support.
* Setup ** Requirements
- GNU Emacs
- ~org-mode~
* Usage
** Setup
Since I've adapted it to work as a normal publishing function for 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 as org, setting it up is a lot like any other publishing project:
well:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq org-publish-project-alist (setq org-publish-project-alist
'(("myblog" '(("my-blog"
:base-directory "~/location/to/org/files/" :base-directory "~/location/to/org/files/"
:publishing-directory "/place/to/export/to/" :publishing-directory "/place/to/export/to/"
:base-extension "org" :base-extension "org"
@ -46,26 +62,18 @@
Most of these options are very normal project settings and can be Most of these options are very normal project settings and can be
read about in the documentation for the variable read about in the documentation for the variable
~org-publish-project-alist~. The ~blog-title~, ~blog-description~, ~org-publish-project-alist~. The ~blog-title~, ~blog-description~,
~blog-export-rss~ and ~index-title~, however, are used by ~blog-export-rss~ and ~index-title~, however, are used by ~org-blog~.
~org-blog~.
- ~blog-title~ - ~blog-title~ :: This setting is used when exporting RSS. It sets the
~title~ in the XML output.
This setting is used when exporting RSS. It sets the ~title~ in - ~blog-description~ :: This setting is also used when exporting
the XML output. RSS. It sets the ~description~ in the XML output.
- ~blog-description~ - ~blog-export-rss~ :: Whether or not you would like an RSS feed to be
exported.
This setting is also used when exporting RSS. It sets the - ~index-title~ :: This is used as the title of the blog's index page.
~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 Apart from these there are also 2 other settings that need your
attention: attention:
@ -77,7 +85,19 @@
These don't have any relevance to the exporting and publishing These don't have any relevance to the exporting and publishing
functions, but they're used by the ~org-blog-new-post~ and functions, but they're used by the ~org-blog-new-post~ and
~org-blog-finish-post~ functions, which help with creating new ~org-blog-finish-post~ functions, which help with creating new posts.
posts.
#+INCLUDE: "../header.org" :lines "5-8" ** 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,7 +1,7 @@
#+TITLE: ryuslash.org #+TITLE: ryuslash.org
#+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" /> #+STYLE: <link rel="stylesheet" type="text/css" href="../../stylesheet.css" />
#+LINK_UP: ../index.html #+LINK_UP: ../index.html
#+LINK_HOME: ../index.html #+LINK_HOME: http://ryuslash.org
#+LINK: python http://www.python.org #+LINK: python http://www.python.org
#+LINK: django http://djangoproject.com #+LINK: django http://djangoproject.com
#+LINK: feedparser http://code.google.com/p/feedparser/ #+LINK: feedparser http://code.google.com/p/feedparser/
@ -10,40 +10,26 @@
#+LINK: src https://github.com/ryuslash/ryuslash.org #+LINK: src https://github.com/ryuslash/ryuslash.org
#+LINK: tar_gz https://github.com/ryuslash/ryuslash.org/tarball/master #+LINK: tar_gz https://github.com/ryuslash/ryuslash.org/tarball/master
#+LINK: zip https://github.com/ryuslash/ryuslash.org/zipball/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: "../header.org" :lines "1-4"
#+INCLUDE: "dlmenu.inc" #+INCLUDE: "dlmenu.inc"
* About * About
:PROPERTIES:
:hosted_at: github
:END:
~ryuslash.org~ is the project of the front page of [[http://ryuslash.org][my website]]. I ~ryuslash.org~ is the project of the [[http://ryuslash.org][front page]] of my website. I have
have noticed, though, that apart from the /design/ and the initial noticed, though, that apart from the /design/ and the initial data,
data[fn:: The configured feeds], there is nothing really specific to there is nothing really specific to my about this project.
my about this project.
Right now all it really does is show a bunch of feeds on a page. Right now all it really does is show a bunch of feeds on a page.
** Why
I've been trying out different kinds of ways to manage/run a
website/blog for a long time now, and I can't seem to keep using
just one thing. This annoys me.
With ~ryuslash.org~ I'm trying it in a different way, gather
everything I do elsewhere and present it in a single place. I
*must* be generating content /somewhere/, and if that's true, and
friends or other interested people might want to know about this,
then it's nice to have it all in one place.
** How
~ryuslash.org~ uses the [[python][Python]] web framework [[django][django]] and the [[python][Python]]
module [[feedparser][feedparser]]. It uses a management command ~loadfeeds~ to go
through all the configured feeds and check them for new items.
** Features ** Features
- Define multiple RSS feeds to load news items from. - Define multiple RSS feeds to load news items from.
@ -62,14 +48,12 @@
- [[feedparser][Feedparser]] 5.1.1 - [[feedparser][Feedparser]] 5.1.1
- [[markdown][Markdown]] 2.1.1 - [[markdown][Markdown]] 2.1.1
* Installation * Usage
Must write... It is a normal django application, so normal django deployment
methods should work.
* Configuration ** Configuration
The feeds that are loaded are defined in the database, through the The feeds that are loaded are defined in ~local_settings.py~. An
~Feed~ model. Now when you want to run your own instance, it might example of how to do this is located in ~local_settings.py.example~.
be preferable *not* to load my feeds, so you should remove (part of)
or change ~aggregator/fixtures/initial_data.json~, otherwise your
feeds will be overwritten by my feeds every time you migrate.