Org Mode for Emacs – Your Life in Plain Text
orgmode.org
orgmode.org
Cannot recommend it more. I started using simple outlines for meeting minutes and quickly realised that it will be easy and more efficient to migrate the aforementioned workflows into org-mode, too.
A last one: Finally I can properly link between Mails, todos and notes (using mu4e for mails). That was never completely working on OS X with Evernote, Mail.app and Things and is just so important!
1. brew install emacs, apt-get install emacs, or pkg add emacs
2. vim ~/.emacs
3. paste the following, verbatim. Don't bother reading it:
(require 'package) ;; You might already have this line
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
(when (< emacs-major-version 24)
;; For important compatibility libraries like cl-lib
(add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/")))
(package-initialize) ;; You might already have this line
4. :wq5. Open emacs
6. Press escape, then "x", then enter. Now type package-install and press enter.
7. Type evil-mode and press enter.
8. Click the "Buffers" menu at the top of the screen, then click "scratch"
Now pretend like you're using Vim. It's almost identical. It's literally like using Vim. You can shift-V = to indent code, gg shift-V gG to select the whole buffer (or, y'know, command-A), etc.
There were only two minor differences that annoyed me: ctrl-u no longer scrolls up, and yanking text copies to the global system clipboard. (v"+y is supposed to do that, not yanking!)
To fix the scrolling issue, press escape then x and type "customize". In the search field, type "evil". You'll get a list of fancy customizations. One of them is C-u for scrolling; enable it, then click "apply and save" at the top.
That should get you started. There are a bunch of fun things to do... Try escape, x, list-packages. You don't even need to know a single keybinding. You'll just get a list of packages with hyperlinks you can click on, which pops up a little info blob that usually has a link to a github repo for the package.
If you try to stick with emacs, the next week or so will be "interesting." You an use escape x apropos to find info about escape x commands. (These are called "M-x" in emacs parlance. And if you use the GUI version of emacs, you can use alt-x instead of pressing escape then x. It's much easier, but doesn't seem to work in the terminal.)
Personally, I stuck with it in order to learn how emacs worked: how you can design a program to be so extensible, and how extensible it truly was. Gamedevs in particular might be interested in going through this gauntlet; the way that emacs lisp exposes functionality will inform the design of the next engine you write. Check out Yegge's post about the universal design pattern as applied to gamedev.
You mean this one?
http://steve-yegge.blogspot.com/2008/10/universal-design-pat...
http://steve-yegge.blogspot.com/2008/10/universal-design-pat...
All of it is pretty interesting, but it's sort of unreasonable to say "Here, read this tome." You can skip to the Wyvern section for the important bit. Gamedevs will be particularly interested, because the question of "How do I enable people to write games in the most flexible way?" is one of the great unsolved problems in gamedev. There's just no good way to do it. Every engine has tradeoffs, but circa 2016 these tradeoffs are anachronistic. A modern engine should be written mostly in the scripting language that it provides. Most of the codebase that would otherwise be C++ code should be script. This can be done with almost no performance penalty. So the only question left, once you decide to really do this, is how do you design it?
I think Emacs' design is the answer. Almost all of the core ideas can be incorporated into a modern game engine, provided that it's built from scratch.
Few people have the skills or the inclination to pull this off, which is why it hasn't happened yet. But I suspect anyone who does this will end up with thousands of users who love making things in it. As with Emacs.
Ok. Yeah, I accidentally deleted an #\l from "html" :(.
Emacs really isn't a scriptable editor: it's an editor written in a 'scripting' language atop a relatively small set of primitives which happen to be useful for editing. But it's also an email client written in that same language, and a version-control interface, and a web browser, and a news client, and a Tetris game, and and and …
That works in all my terminals — I suspect something's awry with your settings.
One issue is that if you use gnome-terminal under Ubuntu, I think by default it steals alt for its own menus. There's a setting to disable that, and I always selected it when I used gnome-terminal, because who uses GUI menus with a terminal? Nowadays I just use st.
Another tip is to set your caps lock key to control. This is one of those 'how did I ever live without this?' things (I actually buy keyboards where the control key is physically where caps lock is on most; it's that vital).
And if you write any Lisp or code, you might like to swap parentheses & square brackets. For me, at least, it's another one of those 'how did I ever live without this?' things. I type parens all the time, and now I don't have to hit shift. It's … wonderful.
Karabiner is pretty good though, and you can select certain keybindings to only work in emacs.
I've also remapped CONTROL to CAPS LOCK, a more common re-binding to save one's left-hand from endless torture and mutilation!
Karabiner https://pqrs.org/osx/karabiner/index.html.en On GitHub https://github.com/tekezo/Karabiner
It's also pretty simple to extend Karabiner with XML scripts.
LShift UP::Send, ( RShift UP::Send, ) LShift & F13:: RShift & F13::
As a Clojure and JavaScript dev I think I am going to like this mapping quite a bit, so thanks for the tip!
I recently switched from Vim (still using it through plugins in some IDEs) and decided to not start with Evil mode but give Emacs keybindings a proper go. Switching the capslock key to CTRL has been crucial. This switch is a built in feature in OS X and Gnome. Downloaded a third party app in windows for my corporate pc.
I found that out because I was trying to start using org mode but I'm new to emacs. That was one of many issues I ran into trying to get it to work. (First was that the emacs that comes with OS X is ancient and doesn't have org-mode, so I had to use brew to get a good version).
Next is none of the tutorials actually match the shortcuts that org-mode actually uses on my system.
it honestly felt really backwards to use spacemacs after ~10y of vim usage. i would prefer to learn plain emacs + evil mode instead.
I have now started back with emacs + evil and a minimal setup. I find it gives me the best of all worlds.
everyone talks about spacemacs=vim. this is nice, but what turned me off of spacemacs was the layers config abstractions. It breaks the normal configuration of emacs. Just install evil mode and a few contrib packages.. that's spacemacs lite.
(One of the big lures of spacemacs and/or evil-mode for me is that I've always been envious of Emacs Lisp. I see things like GNUS and org-mode and SLIME... then I see Vimscript, and I hang my head in shame.)
I would love suggestions for alternatives. I've been keeping a plaintext "notes" file as well for damn year 20 years, but am thinking about reorganizing it into OrgMode.
https://github.com/alphapapa/org-protocol-capture-html
With this, you can capture HTML content directly into Org, converted into Org syntax with Pandoc.
For example, to capture your comment into Org, I just highlight it in Pentadactyl (Firefox), press "cc", and Emacs pops up a capture buffer with your comment inserted into the capture template. Or if I press "ch", it passes it through Pandoc, converting HTML lists, tables, headings, code blocks, etc. into their Org counterparts.
I also just added support for python-readability, so if I press "cr", the URL of the page is sent to python-readability, which gets the article content (just like the good ol' Readability bookmarklet), then passes it through Pandoc, and then places it into the capture template.
For me, org-mode is my go to markup language. So much so that I now find writing in Markdown to be almost painful. A few of my favourite features are:
- Tables are amazingly easy in org-mode, with spreadsheet features thrown in as well.
- Code snippets can be written in their own major mode, giving me syntax highlighting, auto completion and the ability to run the code and embed the output into the markup.
- Local links autocomplete, so I don't worry about breaking them with typos.
- I can export to HTML, Markdown, ODF or PDF.
- GitHub supports org-mode Readmes
I actually, currently, use Org-Mode much more for writing than for organising / tasks / todos.
[1] http://appventure.me [2] https://github.com/terhechte/appventure-blog/blob/master/res...
For me, babel is the killer feature. I can write code snippets in the buffer, highlighted and indented according to the corresponding emacs mode, with paredit for lisp, and beautifully exported via pygments. A single key combo lets me evaluate my code in persistent repls associated with my buffer, and I can choose what combo of code/result I want to export. I had some of my snippets generate raw LaTeX that I could include in the document.
Org links make section references trivial, and I have it hooked up to ebib so my citations are pure org. In the emacs buffer, clicking a citation link takes me straight to the bibtex entry.
I don't much use the organiser, but I do use org heavily for writing cross referenced notes about other people's code.
https://github.com/melling/ios_topics
* https://workflowy.com/ -- the most mature app
* https://www.moo.do -- really nice Google Apps integration
* https://checkvist.com/ -- extremely feature rich
I'm really excited by these tools. I feel like org-mode has some really nice insights, but there's a lot of potential to improve.
But then I finally read some blog posts and documentation and it clicked. I'm not looking back, either.
Even though I'm Emacs-inclined (though not living in Emacs), orgmode is too unwieldy and complicated for me, and the "killer missing feature" is quick entry and editing on my mobile phone. OneNote does that very, very well.
I do live in Emacs, but I prefer the mouse to the keyboard for tasks that can be done both ways, and balked at learning the many dozens of keyboard shortcuts ("keys", in Emacs terminology) org mode wanted me to learn.
The org-mode experience is better, yet totally future proof, because it's just flat text files.
I actually moved everything that is important for the very long time by hand and started creating everything that's new in org-mode. So, yeah, there's still thousands of notes in Evernote and sometime I get back to them, but those times will become fewer and fewer in time.
I'd pay for a tool that converts the EN XML to a proper org-mode file. Even better if I could do that on a regular basis, because EN still rocks most for capturing paper into an OCR'ed PDF.
Since I store my diary, ideas, manuscripts, cv's, contacts, meeting notes and a myriad of other things, I cant simply trust anything else with the data.
I've seen many cases with distraught persons realizing all their treasured data is locked into a obsolete format on a obsolete machine that just crashed.
And it's hard to note down so much content on mobile that you won't be able to retype it back on a proper computer under 5 minutes.
http://stackoverflow.com/questions/15736590/how-to-automatic...
Org can also store arbitrary links, with custom protocols - for instance I link from org to our jira project using links like [jira:3456].
I still use org-mode for writing everything else. Nothing competes with that.
All you need is a machine accessible via ssh, and you won't have to trust centralized proprietary services.
- nightly export to dropbox as plaintext and a backup as a type of json format with more metadata. If Workflowy goes away tomorrow, I have everything and can continue in an editor if I like. But until then, I use the pretty web interface.
- multiple device support. I am not going to mess with ssh on my mobile devices. I use Workflowy for everything from extended note-taking and long-form writing to quick pre-set searches on the go for reference; and that's on all my various interfaces (and sometimes other peoples too).
- Workflowy is easy enough for laypersons to view and/or collaborate in seconds. No setup necessary on their end.
I am a happy paying customer of theirs.
Don't use an Orgmode copycat on another platform. Go straight for OrgMode on Emacs.
If you are a Vim user, EVIL mode has the best Vim keybindings I have ever used.
You don't have to leave your other dev environments for Emacs. Use Emacs only for OrgMode if you like.
My only issue with OrgMode is that it's a bit of a rabbit hole. Sometimes I clean slate my system to get rid of built up complexities, cruft, debt and other messes and I get stuck when I look at OrgMode. It's a full on project to get it to where I feel I want it to be and there is always something I an improve or change. It's never ending.
Sometimes I just want something quick which handles just text and has lots of features for doing different things with that text. In this case, I reach for Acsciidoctor. Yes, I know that OrgMode could be the same, but I need the constraints to keep me from tinkering.
The main reason I switched was to check out org-mode (I didn't even plan to fully switch for a while), and it's that good. org-mode is the killer app for emacs. gdb-mode is really good too actually, as is eshell. For web development maybe emacs isn't any better, but for C it's really really nice.
For the Org Mode aficionados: I feel that this "thing" meets my needs for the most part. I can create task items, comment them out when I'm done, add notes and TODOs, and fold everything so I can focus on the task I'm working on. What feature do you think I'll benefit the most from, if I decide to switch to Org Mode?
org-mode is a little more, though.
Say, you have lots of todos with schedules and deadlines, how do you find them? Certainly you could write a regexp and put it in a separate buffer. Or use the org-mode Agenda.
Say, you want to share and export your file, because it's a meeting minute document. Sure, you could write your own parser, convert the thing to markdown and use pandoc. Or use org-mode Export to everything (HTML, PDF, Slides, ...).
Say, you want to track time on your tasks, because it's client work. Sure, you could write a VIM plugin, but then you realize that VIM and async jobs are hard (yeah, Neovim is coming..). Or use org-mode clocks and reports.
Or something else completely - like I mentioned I really do enjoy your hack! However, when re-implementing a tool - I'd first figure out why I need a different tool before I spent working on a new one. And believe me, I tried to do what you do in VIM(;
Ah, and don't be afraid of Emacs - there is a mode called 'evil-mode' that is just the perfect VIM emulation. I'm using it daily. Therefore switching is a matter of minutes. Except if you have lots of handcrafted VIM plugins to port, that is^^
What you gain with org-mode is quite a bit:
Org-bable which allows you to write outlines with blocks of text that can call external scripts. This is a bit like a Mathematica workbook, with text notes and evaluations, but you can call to Python, Ruby, or whatever language you want.
You can export an .org file into many different formats. LaTeX, HTML and OpenOffice format are what I use most often. Note that you can modify the template to export to any custom format you want. What is very useful are the Beamer templates, where you can turn an .org document into a slideshow very easily. This is a killer feature for anyone who has to lecture often and needs a quick way to get his notes on some slides that look quite professional.
Org-mode also has an agenda, calendar and even contacts if you want to store them there. You can provide links in your agenda to a specific part of your file, so you can click on the TODO link and go immediately to what needs to be done. This is extremely valuable for a large project and saves a lot of time.
There is also org-capture for those moments when you are fixing one file and you need to remind yourself to refactor a function in another file. This helps avoid many bugs especially in a large project where the function definition can be somewhere else. You can also capture any sort of text. When looking up documentation I often capture the web page and put it in a NOTES.org file in a project, especially when it is something obscure that I don't use that often. These notes can also have links/todos, etc. making it very practical.
Also since I do email in Emacs [mu4e], I can simply make a TODO from an email with org-capture, and it goes into the agenda. In the agenda I have a link to the original email and to any other file or notes that I add to this task. This is very handy with bug-reports and things of this sort. Also, I can search my agenda files to see if anything like this has happened before, etc. It really helps to be able to do this without having to be online like with many bug-tracking software - which is very helpful when on a commute in the train.
These are just a few things that you would gain with org-mode, but really there is no end to the customization you can do. It is all written in plain-text and controlled with elisp. I like the fact that with this one tool [Emacs] I can do so many things, so it is worth the time to know the tool well. It also can expand to do whatever task I need to do. The plain-text format makes it possible to even employ outside tools, such as sed and awk, if I am not inspired in elisp at the moment. To do all the things that I do in Emacs would require learning several different tools each with their own document format and key-bindings and wouldn't even necessarily be adaptable to the task at hand.
On the other hand, you do have the obligatory xkcd:
However, this question:
> What feature do you think I'll benefit the most from, if I decide to switch to Org Mode?
To me, that's like asking, "What feature do you think I'll benefit the most from if I decide to switch from paper to a computer?"
What you have there is syntax highlighting and folding, which is a big improvement over simple text editing.
But Org is a system for capturing, manipulating, and exporting structured data that happens to be stored in plain-text. It's also a tool for literate programming, literate devops, and reproducible research. It's also a tool for writing documents, books, blogs, etc. It's also a PIM/organizer, time-tracker, habit-tracker... The list goes on and on. Org is basically whatever you want or need it to be. You get out of it what you put into it, and it's with you for the long haul, always becoming more powerful and adaptable.
The community is also very friendly. Just check out the mailing list if you need any help.
It is a personal organizer, and the beginning of a platform to change how individuals (or mankind) manage knowledge overall.
(Now with an improved web site.)
Feedback welcome!!
Even more of a turn-off for me is storing data in Postgres. Postgres is great, but one of the primary benefits of Org is that it stores data in plain-text. I can get data out of my Org files on any platform with any program that can view text files. To get data out of a Postgres file...is orders of magnitude more complicated.
But it looks interesting. I'd recommend putting up some screenshots, because the front page of your site is a list of links without much actual information. :)
Thanks for the suggestion. There are screen shots under "about" then "what it is today" then "screen shots". I should probably put them on the top in a side frame or such.
The FAQs have in them somewhere, links to a discussion of a more detailed comparison with org-mode.
I could use web design input, maybe via lists or at the site.
System A: get a notebook. Write down what you want to capture when you are away from your comp. When you sit down, check your notebook.
System B: Run your org mode on a linode. Download Connectbot (SSH client) for your phone. You can now connect to your Org wherever you have cell service and work from one always-running emacs instance with emacs --daemon and emacsclient -c. I bought a personal blackberry (yes, I know) solely for the physical keyboard which makes throwing out a CTRL or META keypress much easier.
I have recently switched to emacs from TextMate. I have not been using TextMate to its full potential as I simply did not have the need to do so. It was good. It worked great out of the box.
Then I realized that I needed to do much more than just use a text editor and have been glueing a lots of other utilities together.
Then I doscovered emacs. A behemoth godknows how old. And decided to learn it.
The learning experience is really steep but I think it's worth it. EMACS survived the test of the time along with VI(m). But sometimes I just feel it's too much and the great extensibility comes at price.
I am looking forward to Atom but the performance is not that great compared to EMACS. Not yet.
https://github.com/vimwiki/vimwiki
Not feature for feature compatible, but sharing the same spirit
I use emacs org-mode on my Linux desktop, and orgzly(http://www.orgzly.com/) on my Android. org files were synced via syncthing.
This always irks me a bit.
Being text doesn't mean that there is no file format and internal semantics to it.
Sure, it's easy to hack together some transformation in Perl, but "plus it's completely platform agnostic and future proof, because it's just binary" would be correct, as well. As long as the format is documented.
What I meant is this: I do have a paperless workflow and used to have thousands of Evernote notes with meeting minutes, scans of paper, etc. Whilst this is working pretty well for now on the Desktop and Mobile, there will be a time in 10-40 years when I need to go back to some of those documents. And whilst I wish Evernote all the best of luck, chances are good that they won't be around or worse.
Whilst you are correct in 'as long as binary is documented' it's platform agnostic, you are also completely wrong. Have you tried to read some documents from just 15 years ago recently? Apart from reading from floppy disks, it's just hard.
The internal semantics of org-mode are important to me now, when I do my actual project. In the far future, the only thing that is important is that I can full-text search and find my old legal documents. That's just a billion times more easy and realistic with a flat text file than with a hypothetical well-documented binary format.
Sure, you might lose runtime access to the data if some ancient library goes poof, but the barriers/prereqs for re-implementing that code from scratch are minimal.
I use Org more or less constantly, and I'll take this opportunity to note an Org-related observation that I've been mulling over for a bit. It's apropos of nothing, but then so was this submission :)
The observation has to do with how new Org users get to know the system. The whole thing can seem pretty daunting, especially when you look at some of the examples of TODO setups (http://doc.norang.ca/org-mode.html) in the wild. Pretty crazy.
My nutshell advice for new users is: in the beginning, you should emphasize learning to use Org's tools effectively, rather than spending time organizing your Org files structurally. The initial impulse is: I'm going to make this file look just like my brain (or my project). Instead, learn to use the agenda commands, so that you can make the Agenda look like your project, not the file.
A couple of reasons for this: If you start out trying to make structure (and I'm also talking about very complicated TODO keyword flowcharts), you're going to get it wrong, and it's going to be a pain in the butt to fix. Learning Agenda commands, on the other hand, will always provide you with more flexibility, not less. It will give you the power to handle new situations easily, and to narrow your focus with ease. (Actually the same principle applies to Emacs usage in general.)
For instance: I do a fair amount of event and conference management, little four/five day things. In the beginning, I started by making Org files where each day was a heading, and then the various events lived under the various headings. This meant that, if events got changed around, I had to go to the file and refile, which isn't terrible, but is a pain.
Instead, I now have no day-based headings at all, just a pile of potential events with timestamps. The Agenda organizes things into days for me. If I need to reschedule something, the Agenda provides more than ample commands for shifting dates by hour/day, or simply entering a new date altogether.
Dump everything in one file, all top-level todos. Use the built-in TODO keywords. Learn to make timestamps, and schedule/deadline cookies. After you're good at that, maybe consider using tags (but maybe don't). Spend the rest of your time learning how the Agenda commands work. Stay in the Agenda, and if you must look at a file, do it with <SPC> on the headline (followed by "o" when you're done), or, if you must, <TAB>. Resist the temptation to futz with your files at all, until some real need begins to emerge from daily usage. If you hold out until the annoyance is killing you, it should be very clear what needs to change, and how, and you're unlikely to do something that you'll regret later.
(I should note that I use Org for two general types of work: one is document authoring, the other is todo/agenda management. The above basically only applies to the latter.)
Learn to impose dynamic, temporary structure on your agenda, rather than imposing static, one-time structure on your files.
Here endeth the (unasked-for) lesson. :)
Seriously, that's the side of things where Org is meant to get out of your way, not provide you with a bunch of flashy tools. Learning to create and manipulate headings (move up, move down, indent, outdent) should take you all of fifteen minutes. Add plain lists, if you like, and footnotes. That's about it.
Where things do get complicated is when you start exporting documents, and realize it would look a bit better if this bit were just a bit different, and then... rabbit hole. But all that stuff, while fiddly, is pretty straightforward, it doesn't have the emergent complexity of agenda handling.
| This is a column <tab>
I've been using Org for several years, but I never knew about the SPC/o combination in the Agenda (I recently discovered TAB). Thanks for sharing that!
Another great agenda feature is bulk editing. Mark entries with `m`, and then use `B` to act on them. Bulk refiling is really handy! Scatter is a neat feature too.
Also, I've come to really like indirect buffers (`org-tree-to-indirect-buffer`). You might also find this useful:
(defun ap/org-agenda-goto-heading-in-indirect-buffer (&optional switch-to)
"Go to the current agenda headline in an indirect buffer. If SWITCH-TO is non-nil, close the org-agenda window."
(interactive)
(if switch-to
(org-agenda-switch-to)
(org-agenda-goto))
(org-tree-to-indirect-buffer)
;; Put the non-indirect buffer at the bottom of the prev-buffers
;; list so it won't be selected when the indirect buffer is killed
(set-window-prev-buffers nil (append (cdr (window-prev-buffers))
(car (window-prev-buffers)))))
(defun ap/org-agenda-switch-to-heading-in-indirect-buffer ()
(interactive)
(ap/org-agenda-goto-heading-in-indirect-buffer t))I got most what I'm currently doing from here: https://www.youtube.com/watch?v=wh_WGWii7UE
MARKDOWN:
```python
#code
```
[Google](http://google.com)

ORG-MODE: #+BEGIN_SRC python
#code
#+END_SRC
[[http://google.com][Google]]
#+CAPTION: Image caption
[[path/to/image.png]]From my experience, our smart phones are much better personal digital assistants than Org Mode can be, as robust as it is.
The next biggest frustration is the way it folds empty lines. If you have a paragraph followed by an empty line, when you fold the paragraph, the trailing empty line will get folded as well. This makes it practically impossible to have empty spaces in your outline. Trying to make it work will result in madness for your average user.
Just relenting on those 2 issues and allowing org mode it's own way will go a long way to making it easier to use, I've found.
The main benefit I've found for using org mode is being able to write up TODO lists and then easily move everything around by folding it and cutting and pasting. Also being able to change the organization by easily changing the hierarchy is amazing. I know of no other application that allows so much ease of change.
After that, the spreadsheet capabilities are really quite interesting. I've actually implemented full on XP-style planning lists with automatic velocity calculation in org mode -- complete with automatically generated burn down charts.
Of course, other people use org mode for completely other uses. This is just what I end up using it for.
You could also use `org-cut-subtree` or `org-copy-subtree` for that. And of course `org-refile` (C-c C-w) is very useful, although you'll probably want to customize it to allow refiling to other places than just the first level headlines of the current file.
For example, I use org-capture+datetree when taking notes and can have months worth of information in an org buffer. I like to use '2 C-c <TAB>' when situated on a month headline to show me all of the top level headings for each day in that month. It gives me a nice overview of what I have been doing for the month.
With regard to your second issue, you can control this behavior with the org-cycle-separator-lines variable. By default, leaving two blank lines will make org leave a space in your outline when folding.
I generally write in org mode and then export to whatever I need to.
I use it on and off for TODO list management but it is really good for writing.
Smartphones aren't gonna replace org-mode any time soon either: if you do any work on a laptop or desktop, you'll want org-mode. It's the best way to manage ideas and projects.
It is OK to edit text org files with a plain text editor.
Now that I work mostly in an OSX environment where OneNote is a stripped down shell of it's Windows counterpart, I've been searching for a replacement. I think it's time to give org-mode a try once again.
I'm not big on this set of documentation though. It's great for a reference, but I would like to see something more engaging that reviewed the features and gave a brief how-to. If anyone has any links, I'd love to explore.
Also... one of the things that I liked most about onenote is a canned integration with outlook - from my meeting calendar entry I could click a button and it would start a new note with the title of the meeting, the date/time, a list of attendees, etc. Does anyone do something similar in org-mode for taking meeting notes?
That said, it's incredibly powerful. Wouldn't continue to torture myself if it wasn't. I like the plain text files, the authoring experience (the document feels alive somehow), and I've never been more organized. I just wish it existed outside emacs!
"Orgmode for Sublime Text 2 and 3" (didn't try it myself though)
The last time we had a post about Emacs, I wrote a rather long winded response, but the summation of it was this: the value in investing in tools like Sublime Text, Vim, Emacs, etc is when you can pile as much of your workflow into that tool is possible. The power of Emacs is that it is a completely customizable tool. It's primary purpose, of course, is to be a text editor, but you can configure it to be an email reader, web browsing client, note taking tool, it can run external commands, etc. It's powerful, and it can literally be the only application you have open.
The downfall with Emacs is that integrating it in certain environments, namely Windows, is not a trivial matter. I use Visual Studio, Outlook, and Lync at work. I could configure all of that to run in Emacs, but then I'd be taked with maintaining that in addition to my own work.
Maybe I'm doing something wrong.
For me, I went through everything. I've been switching around between paper and digital. I did GTD on paper, did Bullet Journal, and on the computer side I went through Workflowy, OneNote, using Outlook for tasks and some other things too. I eventually gravitated towards org-mode and stayed there.
For me the biggest advantage of org-mode over everything else, paper and digital alike, is its speed and flexibility. I ultimately dislike physical note-taking because my handwriting sucks. And other computer tools lack the speed you get from pure keyboard interface, and the flexibility of org-mode's Agenda system.
There's tons of stuff that is about infinitely more convenient to do with paper than with computers (even tablets). Fast arbitrary drawing, fast arbitrary coloring, being able to get a full overview quicker (if you use a binder, just take out all your notes and spread them on your desk - even three 4k screens won't beat that), etc. But nobody says you have to stick to one and only system for everything. Personally, I still make a lot of designs on paper - but I store tasks and project notes in a digital form.
Agreed. That's why I asked what other people's use cases are. Genuine curiosity. :-)
Not really. With OneNote and evernote you can't (literally) grep through your notes (yay cloud storage, the only thing worse than propertiary formats). They don't integrate all that well with other software, and you can't refile quickly. Way too much clicking in both to do even simplest of tasks, compared to Emacs-powered org-mode, where everything is keyboard driven, and you can do things affecting multiple files simultaneously from the agenda buffer.
About the only places where OneNote & Evernote beat org-mode is the convenience of embedding rich media in notes (in org-mode you have to store files separately and embed links, though there are ways to make e.g. linked images to display inline) and mobile interface. Mobile apps for interaction with org-mode are sadly subpar at the moment.
Pairing with a client the other day, she remarked that she had a hard time following what I was doing. This is because when I write Lisp I usually don't go into it with a plan, because I don't know what I'm going to write yet. So I just keep writing "the next thing," and at the end, presto, a working program!
Org-mode is like that in its relationship w/notebooks. If you know what you're writing, a notebook probably is better, b/c it's easy to carry, doesn't run out of battery, has no load time, etc.
But if (like me) your notebooks have a lot of things half-started, scratched out, and replaced, well, then, org-mode may be for you!
Is there something like oh-my-zsh for emacs?
I want to be able to have all of the IDE features that I've come to know and love but for a wider range of languages.
I usually use C, Asm, Python, php, bash, and a few other languages.
don't know where to start.
> https://github.com/luxpir/plaintext-productivity
Features: todos, timestamps, tagging, calendar, kanban-in-a-text-file (vertical, not horizontal)
It was a response to org-mode complexity and the cruft it encourages you to stow away and never look at again, as well as its rather insane amount of features, 95% of which I had no need for. I make some more detailed comments about org-mode in the post linked to from the repo (https://lukespear.co.uk/plaintext-productivity).
My .vimrc and .gvimrc are small enough that I have them memorized, and I have no reservations about manually typing things like "TODO", date/time, tags, or check boxes.
Like I said, I don't mean to discourage you, but that's my personal preference. I'm sure org-mode and the like make some people more productive, but honestly I don't think the (rather small, really) feature set justifies the bloat; and, frankly, I have a tendency to get sucked into a self-inflicted configuration hell, so I'm likely more productive without them.
ETA: Looks like you're being downvoted. I have no idea why, given that this is Hacker News, after all, and you've just linked us to a hack of your own... Sometimes I hate this place.
TBH the config is not as minimalist as it could be - the autocomplete isn't necessary, nor the archive and save keymappings. Just the syntax, fold and timestamp settings would do - 5 lines? Many would have those set up already... anyway, the idea is to be editor-agnostic, even (poor) Windows 10 users could use notepad with its timestamping or Notepad++ with its folding etc.
No discouragement at all - whatever works for you. Manually typing is essentially what the calendar setup I posted 'offers'. It's typically quicker than picking from a date-box to just type 12 - TASK under the correct month. Completely with you on that front.
My main problem with org-mode and taskwarrior etc. is they are based on the premise that you will have an inordinate number of tasks to manage. Productivity does not that way lie, IMO. I am not into 'folding away' 400 tasks and brain dumping every useless thought I have. Nor am I into being forced to review dozens of time-wasting entries every week.
Being strict with my work tasks/goals/deadlines means I run a lean list - I've run too many crufty ones before to go back there. I just want the computer to automate as much as it can and to augment my wetware, not to give me more work.
Also no probs for the downvotes. The comment started with a few + but then they quickly got overruled. It happens, no big deal, I just always prefer to have both sides of a cult presented in my decision-making :)
Mindmapping is another nice tool to achieve this. Freemind is a useful piece of software (but doesn't have the future-proofness of plain text.)
;; Scroll line by line
(global-set-key (kbd "M-P") 'scroll-down-line)
(global-set-key (kbd "M-N") 'scroll-up-line)
UI matters. Shortcuts and their relationships are part of the UI, and it's horrible for Emacs. It's the same as some people saying "syntax doesn't matter in programming languages", to which I say BS.
Spacemacs has been suggested many many times in similar threads. I also suggest you give it a try, as its keybindings are very user friendly and documentation is good.
And per your specific example: Vim has a great system to move around text. You just need to get used to it, but basically, you'll be executing "motions", where you're telling the software exactly what you want to do using very few keypresses. Anything can look cryptic if you don't take the time to learn it! Trust us, it's worth your while! You are truly limiting yourself by only using arrow keys. You'll quickly stop using them at all in Vim, while gaining productivity quickly. And if you don't like Vim per se, some software supports Vim keybindings.
But I _do_ feel very uncomfortable when I press wrong navigation key in Vim (was it h or j? My fingers don't _feel_ it), and it's really uncomfortable reaching for Ctrl for anything in Emacs, especially Ctrl-B — now _this_ is RSI-prone).
I remapped Ctrl to Caps Lock, which is somewhat better. But Ctrl-B is still quite painful.
But I don't buy the argument that they're so hard to learn, consider it a new video game controller.
There are some games requiring memorizing controls on keyboard, like flight sims. For me, those were impossible to play, until I bought flight stick hardware, which is designed much better.
And I have quite good working memory; I remember all my credit card numbers, more than 100 phone numbers, etc. — which allows me to be a decent software engineer. But I can't recognize faces, and I have problems with some tactile combinations (not all; I can blind type). But vim and Emacs are really hard to me for some reason.
Also, learning keybindings is a matter of your state of mind. Or rather, of your attitude. You didn't start knowing how to use arrows, you learned it at some point in your life. It took time then too. Like 'amasad wrote, treat it as a new controls for a videogame. Somehow people don't have problems with learning those.
And don't get me started on videogames. When I was still playing them, I was constantly remapping keys.
One can say: "OK then, it's Emacs, you can remap the keys any way you want". And believe me, I tried. And struggled with keymapping conflicts here and there (including Ergoemacs).
I adore the idea of absolute configurability. I like how Emacs is built and what amount of extensions is available. I just can't use it, no matter how I tried.
If you ask a physical therapist what is the best way to sit on a chair they will say it is to switch position constantly. I'm not buying that it is opposite for a keyboard.
For me, keeping at the home position limits wrist contortions that I associated with my increased pain.
You have to move your _arms_ when typing, not only your wrists.
You're right that syntax matters: and emacs has a very nice syntax for dealing with text & code. vi is probably better, but I like emacs and am used to it, so I don't bother with spacemacs. CUA bindings are … not good.