From: Rasmus <rasmus@gmx.us>
To: joaotavora@gmail.com
Cc: emacs-devel@gnu.org
Subject: Re: [mentoring] a darkroom/writeroom mode for Emacs
Date: Tue, 09 Dec 2014 13:20:17 +0100 [thread overview]
Message-ID: <878uihhv5q.fsf@gmx.us> (raw)
In-Reply-To: <m27fy15ag9.fsf_-_@king.lan> ("João Távora"'s message of "Tue, 09 Dec 2014 11:28:22 +0000")
joaotavora@gmail.com (João Távora) writes:
> [ Hi Rasmus, I took it from your thorough review of the code that you
> accept to mentor this, in the framework discussed earlier. In the
> future, perhaps change the subject line to "mentoring".
I hit F, write the message and then click C-c C-c. Did you not include
the [mentoring] line to begin with?
> Rasmus <rasmus@gmx.us> writes:
>> Why is your mode preferable?
>
> [ How convincing must the would-be-contributor be at this stage?
> Won't opening with this question intimidate him/her? ]
Maybe. This is the question my supervisor asks me every time I come up
with a new idea. Indeed, it's a very unpleasant question, but one that
you need to consider no matter if you do code or try to write a thesis.
> I haven't done a thorough survey of other extensions, but I remember
> trying some that don't deal well with the margins, and none provide
> something like `darkroom-tentative-mode'.
>
>> Did you take care of the FSF paperwork?
> [ I've contributed to Emacs earlier, so yes. Again should this
> question be on top?]
Yeah, 'cause it takes time. So the earlier the process the better. If
you have not signed papers and do not intend to, I won't read your patch.
>>> I'm looking for pointers on how to clone the Emacs repository after the
>>> recent Git transition, whether to use Emacs or ELPA for it, plus any
>>> other tips that increase my chances.
>> This is surely documented somewhere.
>
> [ Either provide a pointer better than "somewhere", or defer to the
> future if you can't.]
OK.
> Where?
Check: http://www.emacswiki.org/emacs/ELPA#toc2
>> I guess it should go to ELPA, but you need to improve it.
>
> OK, I'll improve it. Once it's in ELPA, how do I maintain it? Can I keep
> using github for the upstream since I'm so familiar with it?
I guess, but it would require more work as you'd need to manually push it.
Perhaps Dmitry (of Company) could explain how he handles it.
>> (defvar darkroom-turns-on-visual-line-mode t
> See above. I think providing a hook is better. People can add this
> themselves
Yes, I got rid of it. You probably also need a hook when exiting. Or the
functions in the hook are called with different argument when entering and
exiting the minor-mode. (I did not reread your code).
>>> (defun darkroom-float-to-columns (f)
>> As above [docstring].
>
> Will do in the future. [ Is this essential? ]
Well, I'm going through your code. Since my time is scare, I would rather
get a quick hint about what the function is doing. I won't have to guess
everything then.
Take org-mode. We have a bunch of weird little functions. I do C-h f on
them. If they have no docstring, I have to go a read the source (which I
probably don't care about).
>> Please add docstring, last argument.
>
> I made these internal variables (used the "--"), do I still need a
> docstring?
IMO: Yes. I don't know if there's an establish consensus.
>>> (defun darkroom-visual-mode-maybe-enable ()
>> Docstring. I don't understand the need of this feature.
>
> I've removed it, since it didn't work very well, but the idea is that a
> buffer in visual-line-mode (with soft wrapping of long lines), will
> always enter darkroom-mode with nice margins that perfectly center the
> text on the screen. A buffer with hard linebreaks (like this message) is
> not perfect for darkroom-mode, since the margins won't center it.
I agree. Indeed if you can solve this issue it would be pretty cool.
> But I've added a utility function `darkroom-guess-margins' that can be
> set as the value for `darkroom-margins' and attempts to guess that. In
> the writing of this message, for example, where I `fill-pargraph' all
> the time, it has guessed the "correct" margins (see screenshot). In
> code, it normally defaults to 15% margins.
The screenshot looks nice.
> It's not perfect, and could be improved. Unfortunately, and more
> seriously, it doesn't work when the text scale is increase with
> `darkroom-text-scale-increase' set to anything but 0, because
> `window-width' doesn't know about text scaling
> apparently. `window-width' can return pixels, but then how can I know
> the pixel width of the current buffer's font? `frame-char-width' was
> promising, but also always returns a constant value.
To me, larger font would be essential. And indeed, a problem is the
combination of auto-fill and larger font. ATM I don't have a good idea on
how to solve this.
>>> (cond ((and (not darkroom-mode) (= (count-windows) 1))
>> why count-windows? Why would it not just use the buffer in focus?
>
> The idea in `darkroom-tentative-mode' here is that `darkroom-mode' is
> entered if and only if all but one window on the frame are deleted.
>
>>> (define-minor-mode darkroom-tentative-mode
>>> "Minor mode that enters `darkroom-mode' when all windws are deleted"
>> Again, this seems like a feature and I have no idea about it cause you
>> never explain the intended design.
>
> Well, minus typo I did very briefly. But it should be clearer now from
> the commits I did.
OK, as long as your document it, it's fine.
>> Hope it helps,
>
> It did. [ It did. ]
both of you are happy, that's good!
—Rasmus
--
A page of history is worth a volume of logic
next prev parent reply other threads:[~2014-12-09 12:20 UTC|newest]
Thread overview: 249+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20141203142859.24393.98673@vcs.savannah.gnu.org>
[not found] ` <E1XwAvL-0006M3-CA@vcs.savannah.gnu.org>
2014-12-03 15:31 ` [Emacs-diffs] master e820f16: Added file-tree-walk to files.el Stefan Monnier
2014-12-03 19:31 ` Eric S. Raymond
2014-12-03 21:19 ` Stefan Monnier
2014-12-03 21:54 ` Metaproblem, part 3 Eric S. Raymond
2014-12-03 22:13 ` Stefan Monnier
2014-12-04 6:30 ` Eli Zaretskii
2014-12-04 6:32 ` Paul Eggert
2014-12-04 15:37 ` Stefan Monnier
2014-12-04 16:06 ` Lars Magne Ingebrigtsen
2014-12-04 17:53 ` Stefan Monnier
2014-12-04 21:48 ` Lars Magne Ingebrigtsen
2014-12-04 22:53 ` Paul Eggert
2014-12-05 4:40 ` Stefan Monnier
2014-12-05 7:20 ` Stephen J. Turnbull
2014-12-05 8:06 ` Glenn Morris
2014-12-05 11:24 ` andres.ramirez
2014-12-05 14:26 ` Stefan Monnier
2014-12-05 14:46 ` David Kastrup
2014-12-05 14:47 ` Lars Magne Ingebrigtsen
2014-12-05 18:38 ` Stefan Monnier
2014-12-06 17:29 ` Lars Magne Ingebrigtsen
2014-12-06 18:05 ` Lars Magne Ingebrigtsen
2014-12-13 22:03 ` Alan Mackenzie
2014-12-04 15:40 ` Generate ChangeLogs (was: Metaproblem, part 3) Lars Magne Ingebrigtsen
2014-12-04 17:23 ` Generate ChangeLogs Karl Fogel
2014-12-04 17:28 ` Eric S. Raymond
2014-12-04 17:40 ` Paul Eggert
2014-12-04 19:09 ` Achim Gratz
2014-12-05 8:07 ` Glenn Morris
2014-12-06 2:24 ` Paul Eggert
2014-12-04 18:18 ` Ted Zlatanov
2014-12-04 13:58 ` Metaproblem, part 3 Phillip Lord
2014-12-04 14:32 ` João Távora
2014-12-04 17:40 ` Eli Zaretskii
2014-12-05 10:27 ` João Távora
2014-12-05 10:45 ` Eli Zaretskii
2014-12-05 11:21 ` João Távora
2014-12-05 11:31 ` Eli Zaretskii
2014-12-05 12:20 ` João Távora
2014-12-05 13:16 ` Kelvin White
2014-12-05 14:52 ` Eli Zaretskii
2014-12-06 5:38 ` Stephen J. Turnbull
2014-12-06 7:07 ` João Távora
2014-12-06 8:03 ` Eli Zaretskii
2014-12-08 11:40 ` [mentor-request] a darkroom/writeroom mode for Emacs João Távora
2014-12-08 12:15 ` joakim
2014-12-09 11:46 ` João Távora
2014-12-09 12:45 ` joakim
2014-12-10 2:39 ` Stephen J. Turnbull
2014-12-08 12:40 ` Rasmus
2014-12-09 11:28 ` [mentoring] " João Távora
2014-12-09 12:20 ` Rasmus [this message]
2014-12-09 13:11 ` João Távora
2014-12-09 14:56 ` Rasmus
2014-12-10 0:54 ` Stefan Monnier
2014-12-10 1:22 ` Rasmus
2014-12-09 22:25 ` Rasmus
2014-12-11 11:22 ` João Távora
2014-12-11 17:15 ` Stefan Monnier
2014-12-12 11:19 ` João Távora
2014-12-11 18:33 ` Rasmus
2014-12-12 11:16 ` João Távora
2014-12-12 12:09 ` Rasmus
2014-12-15 12:01 ` [mentoring-done] " João Távora
2014-12-15 13:06 ` Dmitry Gutov
2014-12-15 13:20 ` João Távora
2014-12-15 13:47 ` Dmitry Gutov
2014-12-15 13:55 ` João Távora
2014-12-15 14:38 ` Stefan Monnier
2014-12-15 13:19 ` martin rudalics
2014-12-15 13:37 ` João Távora
2014-12-15 14:15 ` martin rudalics
2014-12-15 14:54 ` João Távora
2014-12-15 15:28 ` martin rudalics
2014-12-15 22:10 ` João Távora
2014-12-12 14:27 ` [mentoring] " Drew Adams
2014-12-12 14:38 ` Stefan Monnier
2014-12-09 16:32 ` Phillip Lord
2014-12-08 11:46 ` [mentor-request] Ecco - a literate programming documentation generator João Távora
2014-12-21 20:17 ` Results of the "mentoring" experiment Re: Metaproblem, part 3 João Távora
2014-12-21 21:22 ` Rasmus
2014-12-22 14:14 ` Results of the "mentoring" experiment Stephen Leake
2014-12-22 16:01 ` João Távora
2014-12-22 16:03 ` João Távora
2014-12-05 12:16 ` Metaproblem, part 3 Phillip Lord
2014-12-05 13:20 ` Eric Abrahamsen
2014-12-05 14:59 ` Eli Zaretskii
2014-12-06 5:45 ` Stephen J. Turnbull
2014-12-06 6:18 ` Eric S. Raymond
2014-12-06 8:01 ` Eli Zaretskii
2014-12-06 16:32 ` Stephen J. Turnbull
2014-12-06 8:29 ` Eric Abrahamsen
2014-12-06 10:11 ` Eli Zaretskii
2014-12-06 10:40 ` Eric Abrahamsen
2014-12-06 10:47 ` Eli Zaretskii
2014-12-06 11:04 ` David Kastrup
2014-12-06 12:52 ` Ivan Shmakov
2014-12-07 1:41 ` Eric Abrahamsen
2014-12-09 12:29 ` João Távora
2014-12-06 14:18 ` Stephen J. Turnbull
2014-12-07 1:38 ` Eric Abrahamsen
2014-12-06 10:51 ` David Kastrup
2014-12-07 9:19 ` Richard Stallman
2014-12-05 10:56 ` Phillip Lord
2014-12-05 11:15 ` Eli Zaretskii
2014-12-05 12:09 ` Phillip Lord
2014-12-05 14:50 ` Eli Zaretskii
2014-12-03 19:32 ` [Emacs-diffs] master e820f16: Added file-tree-walk to files.el David Engster
2014-12-03 19:53 ` Eric S. Raymond
2014-12-03 19:58 ` David Engster
2014-12-03 20:08 ` Eric S. Raymond
2014-12-03 20:28 ` David Engster
2014-12-03 20:58 ` Eric S. Raymond
2014-12-04 20:28 ` David Engster
2014-12-04 20:46 ` Eli Zaretskii
2014-12-05 2:16 ` Stefan Monnier
2014-12-05 8:06 ` Glenn Morris
2014-12-03 15:34 ` Stefan Monnier
2014-12-03 16:41 ` Thien-Thi Nguyen
2014-12-03 18:08 ` Eli Zaretskii
2014-12-03 18:36 ` Tom
2014-12-03 19:21 ` Paul Eggert
2014-12-03 19:27 ` Tom
2014-12-03 18:58 ` Lars Magne Ingebrigtsen
2014-12-03 19:26 ` Eric S. Raymond
2014-12-03 19:11 ` Thien-Thi Nguyen
2014-12-03 19:27 ` Eric S. Raymond
2014-12-03 19:41 ` Paul Eggert
2014-12-03 20:03 ` Commit comment rules - and a metaproblem Eric S. Raymond
2014-12-03 20:26 ` [Emacs-diffs] master e820f16: Added file-tree-walk to files.el Eli Zaretskii
2014-12-03 21:14 ` More metaproblem Eric S. Raymond
2014-12-03 22:13 ` Karl Fogel
2014-12-04 6:38 ` Eli Zaretskii
2014-12-04 8:38 ` Stephen Leake
2014-12-04 10:11 ` Eli Zaretskii
2014-12-04 10:23 ` David Kastrup
2014-12-04 15:35 ` Stefan Monnier
2014-12-04 16:33 ` Stephen Leake
2014-12-04 17:37 ` Eli Zaretskii
2014-12-04 20:43 ` Stefan Monnier
2014-12-04 21:26 ` Eli Zaretskii
2014-12-05 23:03 ` chad
2014-12-04 9:08 ` Stephen Leake
2014-12-04 10:01 ` Eli Zaretskii
2014-12-04 10:11 ` David Kastrup
2014-12-04 10:27 ` Eric S. Raymond
2014-12-04 10:35 ` David Kastrup
2014-12-04 11:01 ` Eli Zaretskii
2014-12-04 11:07 ` Eric S. Raymond
2014-12-05 1:23 ` Stephen J. Turnbull
2014-12-05 6:53 ` Eli Zaretskii
2014-12-04 18:33 ` Karl Fogel
2014-12-04 21:21 ` Eli Zaretskii
2014-12-04 22:01 ` Jorgen Schaefer
2014-12-05 7:08 ` Eli Zaretskii
2014-12-05 7:55 ` Aurélien Aptel
2014-12-05 8:44 ` Eli Zaretskii
2014-12-06 10:41 ` the Emacs wiki Stephen Leake
2014-12-06 10:58 ` Eli Zaretskii
2014-12-06 21:28 ` Nic Ferrier
2014-12-07 22:47 ` Stephen Leake
2014-12-09 8:04 ` Nic Ferrier
2014-12-09 22:28 ` Alexis
2014-12-10 21:32 ` Nic Ferrier
2014-12-06 5:11 ` More metaproblem Stephen J. Turnbull
2014-12-06 7:47 ` Eli Zaretskii
2014-12-05 11:52 ` Nicolas Richard
2014-12-05 22:43 ` Richard Stallman
2014-12-05 16:51 ` Karl Fogel
2014-12-05 16:57 ` Lars Magne Ingebrigtsen
2014-12-05 18:24 ` Eric S. Raymond
2014-12-05 21:16 ` Karl Fogel
2014-12-05 18:56 ` Stefan Monnier
2014-12-05 17:27 ` Eli Zaretskii
2014-12-05 17:52 ` Karl Fogel
2014-12-05 18:39 ` Glenn Morris
2014-12-05 21:23 ` Karl Fogel
2014-12-05 22:24 ` Eric S. Raymond
2014-12-05 22:41 ` Ted Zlatanov
2014-12-05 23:02 ` Eli Zaretskii
2014-12-05 23:12 ` Eli Zaretskii
2014-12-06 4:58 ` Eric S. Raymond
2014-12-06 7:42 ` Eli Zaretskii
2014-12-06 11:35 ` Eric S. Raymond
2014-12-06 11:58 ` David Kastrup
2014-12-06 12:35 ` Eli Zaretskii
2014-12-06 14:10 ` Werner LEMBERG
2014-12-06 9:27 ` Stephen Leake
2014-12-06 10:20 ` Eli Zaretskii
2014-12-06 11:41 ` Eric S. Raymond
2014-12-06 12:37 ` Eli Zaretskii
2014-12-06 13:16 ` David Kastrup
2014-12-06 14:22 ` Eli Zaretskii
2014-12-05 18:19 ` Eric S. Raymond
2014-12-05 21:14 ` Karl Fogel
2014-12-05 21:23 ` Eric S. Raymond
2014-12-05 18:20 ` Glenn Morris
2014-12-05 18:56 ` Eric S. Raymond
2014-12-05 20:11 ` Eli Zaretskii
2014-12-08 17:16 ` Glenn Morris
2014-12-09 11:00 ` Richard Stallman
2014-12-06 9:41 ` Stephen Leake
2014-12-06 9:10 ` maintaining FSF Emacs web page Stephen Leake
2014-12-06 17:57 ` Karl Fogel
2014-12-07 9:20 ` Richard Stallman
2014-12-09 12:30 ` Alex Schroeder
2014-12-10 8:24 ` Richard Stallman
2014-12-06 9:19 ` More metaproblem Stephen Leake
2014-12-06 16:44 ` Drew Adams
2014-12-06 18:41 ` Stephen Leake
2014-12-06 19:24 ` Drew Adams
2014-12-07 22:07 ` Stephen Leake
2014-12-07 23:00 ` Drew Adams
2014-12-08 15:57 ` Eli Zaretskii
2014-12-08 21:23 ` Przemysław Wojnowski
2014-12-09 16:54 ` Eli Zaretskii
2014-12-10 9:16 ` Stephen Leake
2014-12-10 19:46 ` Przemysław Wojnowski
2014-12-10 20:48 ` Eli Zaretskii
2014-12-10 22:10 ` Stefan Monnier
2014-12-10 20:09 ` Przemysław Wojnowski
2014-12-10 20:28 ` Stefan Monnier
2014-12-05 9:58 ` Stephen Leake
2014-12-05 15:44 ` Stefan Monnier
2014-12-05 17:37 ` Karl Fogel
2014-12-05 19:36 ` Stefan Monnier
2014-12-05 17:34 ` Karl Fogel
2014-12-05 17:40 ` Lars Magne Ingebrigtsen
2014-12-05 17:54 ` Karl Fogel
2014-12-06 12:04 ` Richard Stallman
2014-12-06 18:56 ` publicizing Emacs contribute Stephen Leake
2014-12-06 19:29 ` Óscar Fuentes
2014-12-07 1:00 ` Dmitry Gutov
2014-12-07 1:33 ` Óscar Fuentes
2014-12-08 0:23 ` Richard Stallman
2014-12-07 9:21 ` Richard Stallman
2014-12-07 23:06 ` Stephen Leake
2014-12-05 18:04 ` More metaproblem Eric S. Raymond
2014-12-06 10:19 ` Stephen Leake
2014-12-05 11:45 ` Phillip Lord
2014-12-06 5:17 ` Stephen J. Turnbull
2014-12-06 10:17 ` David Kastrup
2014-12-06 16:45 ` Drew Adams
2014-12-06 10:30 ` Stephen Leake
2014-12-03 22:14 ` Stefan Monnier
2014-12-04 3:32 ` Stephen Leake
2014-12-04 6:25 ` Eli Zaretskii
2014-12-05 18:37 ` master e820f16: Added file-tree-walk to files.el Michael Heerdegen
2014-12-05 18:57 ` Eric S. Raymond
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=878uihhv5q.fsf@gmx.us \
--to=rasmus@gmx.us \
--cc=emacs-devel@gnu.org \
--cc=joaotavora@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.