Re: [O] anyway to create link to a line number in a file

2012-02-21 Thread Nick Dokos
Not To Miss  wrote:

> > Ideally, it would
> > be great if in the normal stored org link, line number could be
> > included in the link and would be ripped off from the text to search
> > the linked file.
> >
>
> I'm confused - what exactly are you asking for here? If you don't use
> the line number for searching, why would you want to store it?
> 
> Because I think sometimes the line number gives valuable information
> in addition to the text. I meant to create a link like
> [[file:foo.txt::123 whatever_text]], when users open the link,
> org-mode searches "whatever_text"; if it doesn't find anything, jump
> to the line 123. The idea behind that is that it is possible the line
> is changed and is unsearchable but still remains in the same line
> number. 

I guess the main idea is that it is more likely for the text around the
link to remain the same: the line number can change (e.g. if you add
stuff at the beginning of the file), but the surrounding text will
probably remain the same, so a context search is more likely to find you
what you want. But you are right in that a line number can sometimes
disambiguate things, e.g. the etags functionality in emacs works
(worked?  not sure if the implementation is still the same) by using a
position to go to and then searching in ever-widening circles around
that position in order to find the appropriate context. That way,
identical contexts could be used (a necessity for etags) and still be
distinguished from each other.

> This, however, is probably an issue of built-in org-mode
> design, beyond the scope of user customization. 
> 

Yup.

Nick



Re: [O] anyway to create link to a line number in a file

2012-02-21 Thread Not To Miss
On Mon, Feb 20, 2012 at 12:58 AM, Nick Dokos  wrote:

> Not To Miss  wrote:
>
> > Thanks, Nick! It works, though it works only to the specified file(s)
> > by overruling the original org-store-link-functions.
>
> Yes, org marches down the link handlers and takes the first positive
> response as the answer. You can make the function arbitrarily complicated
> of course, if you don't like the behavior, but in any case, it will have
> to say "yes" (and provide the link in some format) or "no" - in the latter
> case, org will continue on with the rest of the functions in the list (and
> fall back to its default if *no* function says "yes").
>
> > Ideally, it would
> > be great if in the normal stored org link, line number could be
> > included in the link and would be ripped off from the text to search
> > the linked file.
> >
>
> I'm confused - what exactly are you asking for here? If you don't use
> the line number for searching, why would you want to store it?
>
Because I think sometimes the line number gives valuable information in
addition to the text. I meant to create a link like [[file:foo.txt::123
whatever_text]], when users open the link, org-mode searches
"whatever_text"; if it doesn't find anything, jump to the line 123. The
idea behind that is that it is possible the line is changed and is
unsearchable but still remains in the same line number. This, however, is
probably an issue of built-in org-mode design, beyond the scope of user
customization.

Anyway, thanks for your help.


>
> Nick
>
> > On Sat, Feb 18, 2012 at 4:58 PM, Nick Dokos 
> wrote:
> > > Nick Dokos  wrote:
> > >
> > >> Not To Miss  wrote:
> > >>
> > >> > I looked that section carefully and the whole manual briefly. I
> > >> > haven't found anything yet. That's why I am asking on the mailing
> list
> > >> > to see if anyone has some workaround.
> > >> >
> > >> > On Sat, Feb 18, 2012 at 9:03 AM, Sean O'Halpin <
> sean.ohal...@gmail.com> wrote:
> > >> > > On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss <
> not.to.m...@gmail.com> wrote:
> > >> > >> Hi all,
> > >> > >>
> > >> > >> I am reading a long text file and want to write down my notes
> with
> > >> > >> org-mode. I extremely would like to put the line numbers down
> along
> > >> > >> with my notes. Although there is a way to store a link for text
> search
> > >> > >> for the current line, I haven't found a way to create a link to
> a line
> > >> > >> number in the current buffer. Is there anyway to do that? Thanks
> > >> > >
> > >> > > Take a look at org-capture:
> http://orgmode.org/manual/Capture.html
> > >>
> > >
> > >> The problem is to make sure org-store-link will actually store the
> line
> > >> number (along with everything else) so that then org-insert-link can
> > >> insert the link in the proper format. I don't think there is a
> function
> > >> to do that out of the box for line numbers, but you can easily (for
> some
> > >> value of "easily") write your own. Look in
> > >>
> > >> (info "(org)Adding hyperlink types")
> > >>
> > >> for some hints. Briefly, you write a function that checks whether it
> > >> wants to deal with the link or not, and you add it to
> > >> org-store-link-functions. I don't have the time to try it out right
> now,
> > >> but I believe this should work for what you want.
> > >>
> > >
> > > Following up on this, the following seems to work, although you
> probably
> > > want to tweak the criterion of when you want *this* function to take
> > > care of links - this particular implementation only applies the line
> > > number treatment to links generated in the file named
> > > "/path/to/the.file.txt" and only that file:
> > >
> > > --8<---cut here---start->8---
> > > (defun org-file-lineno-store-link()
> > >  (when (string-equal (buffer-file-name) "/path/to/the.file.txt")
> > >(let* ((link (format "file:%s::%d" (buffer-file-name)
> (line-number-at-pos
> > >  (org-store-link-props
> > >   :type "file"
> > >   :link link
> > >
> > > (add-hook 'org-store-link-functions 'org-file-lineno-store-link)
> > > --8<---cut here---end--->8---
> > >
> > > Nick
> > >
> >
> >
> >
> > --
> > Best,
> > Zhenjiang
> >
>



-- 
Best,
Zhenjiang


Re: [O] anyway to create link to a line number in a file

2012-02-19 Thread Nick Dokos
Not To Miss  wrote:

> Thanks, Nick! It works, though it works only to the specified file(s)
> by overruling the original org-store-link-functions.

Yes, org marches down the link handlers and takes the first positive
response as the answer. You can make the function arbitrarily complicated
of course, if you don't like the behavior, but in any case, it will have
to say "yes" (and provide the link in some format) or "no" - in the latter
case, org will continue on with the rest of the functions in the list (and
fall back to its default if *no* function says "yes").

> Ideally, it would
> be great if in the normal stored org link, line number could be
> included in the link and would be ripped off from the text to search
> the linked file.
> 

I'm confused - what exactly are you asking for here? If you don't use
the line number for searching, why would you want to store it?

Nick

> On Sat, Feb 18, 2012 at 4:58 PM, Nick Dokos  wrote:
> > Nick Dokos  wrote:
> >
> >> Not To Miss  wrote:
> >>
> >> > I looked that section carefully and the whole manual briefly. I
> >> > haven't found anything yet. That's why I am asking on the mailing list
> >> > to see if anyone has some workaround.
> >> >
> >> > On Sat, Feb 18, 2012 at 9:03 AM, Sean O'Halpin  
> >> > wrote:
> >> > > On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss  
> >> > > wrote:
> >> > >> Hi all,
> >> > >>
> >> > >> I am reading a long text file and want to write down my notes with
> >> > >> org-mode. I extremely would like to put the line numbers down along
> >> > >> with my notes. Although there is a way to store a link for text search
> >> > >> for the current line, I haven't found a way to create a link to a line
> >> > >> number in the current buffer. Is there anyway to do that? Thanks
> >> > >
> >> > > Take a look at org-capture: http://orgmode.org/manual/Capture.html
> >>
> >
> >> The problem is to make sure org-store-link will actually store the line
> >> number (along with everything else) so that then org-insert-link can
> >> insert the link in the proper format. I don't think there is a function
> >> to do that out of the box for line numbers, but you can easily (for some
> >> value of "easily") write your own. Look in
> >>
> >> (info "(org)Adding hyperlink types")
> >>
> >> for some hints. Briefly, you write a function that checks whether it
> >> wants to deal with the link or not, and you add it to
> >> org-store-link-functions. I don't have the time to try it out right now,
> >> but I believe this should work for what you want.
> >>
> >
> > Following up on this, the following seems to work, although you probably
> > want to tweak the criterion of when you want *this* function to take
> > care of links - this particular implementation only applies the line
> > number treatment to links generated in the file named
> > "/path/to/the.file.txt" and only that file:
> >
> > --8<---cut here---start->8---
> > (defun org-file-lineno-store-link()
> >  (when (string-equal (buffer-file-name) "/path/to/the.file.txt")
> >    (let* ((link (format "file:%s::%d" (buffer-file-name) 
> > (line-number-at-pos
> >      (org-store-link-props
> >       :type "file"
> >       :link link
> >
> > (add-hook 'org-store-link-functions 'org-file-lineno-store-link)
> > --8<---cut here---end--->8---
> >
> > Nick
> >
> 
> 
> 
> -- 
> Best,
> Zhenjiang
> 



Re: [O] anyway to create link to a line number in a file

2012-02-19 Thread Not To Miss
Thanks, Nick! It works, though it works only to the specified file(s)
by overruling the original org-store-link-functions. Ideally, it would
be great if in the normal stored org link, line number could be
included in the link and would be ripped off from the text to search
the linked file.

On Sat, Feb 18, 2012 at 4:58 PM, Nick Dokos  wrote:
> Nick Dokos  wrote:
>
>> Not To Miss  wrote:
>>
>> > I looked that section carefully and the whole manual briefly. I
>> > haven't found anything yet. That's why I am asking on the mailing list
>> > to see if anyone has some workaround.
>> >
>> > On Sat, Feb 18, 2012 at 9:03 AM, Sean O'Halpin  
>> > wrote:
>> > > On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss  
>> > > wrote:
>> > >> Hi all,
>> > >>
>> > >> I am reading a long text file and want to write down my notes with
>> > >> org-mode. I extremely would like to put the line numbers down along
>> > >> with my notes. Although there is a way to store a link for text search
>> > >> for the current line, I haven't found a way to create a link to a line
>> > >> number in the current buffer. Is there anyway to do that? Thanks
>> > >
>> > > Take a look at org-capture: http://orgmode.org/manual/Capture.html
>>
>
>> The problem is to make sure org-store-link will actually store the line
>> number (along with everything else) so that then org-insert-link can
>> insert the link in the proper format. I don't think there is a function
>> to do that out of the box for line numbers, but you can easily (for some
>> value of "easily") write your own. Look in
>>
>> (info "(org)Adding hyperlink types")
>>
>> for some hints. Briefly, you write a function that checks whether it
>> wants to deal with the link or not, and you add it to
>> org-store-link-functions. I don't have the time to try it out right now,
>> but I believe this should work for what you want.
>>
>
> Following up on this, the following seems to work, although you probably
> want to tweak the criterion of when you want *this* function to take
> care of links - this particular implementation only applies the line
> number treatment to links generated in the file named
> "/path/to/the.file.txt" and only that file:
>
> --8<---cut here---start->8---
> (defun org-file-lineno-store-link()
>  (when (string-equal (buffer-file-name) "/path/to/the.file.txt")
>    (let* ((link (format "file:%s::%d" (buffer-file-name) 
> (line-number-at-pos
>      (org-store-link-props
>       :type "file"
>       :link link
>
> (add-hook 'org-store-link-functions 'org-file-lineno-store-link)
> --8<---cut here---end--->8---
>
> Nick
>



-- 
Best,
Zhenjiang



Re: [O] anyway to create link to a line number in a file

2012-02-18 Thread Nick Dokos
Nick Dokos  wrote:

> Not To Miss  wrote:
> 
> > I looked that section carefully and the whole manual briefly. I
> > haven't found anything yet. That's why I am asking on the mailing list
> > to see if anyone has some workaround.
> > 
> > On Sat, Feb 18, 2012 at 9:03 AM, Sean O'Halpin  
> > wrote:
> > > On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss  
> > > wrote:
> > >> Hi all,
> > >>
> > >> I am reading a long text file and want to write down my notes with
> > >> org-mode. I extremely would like to put the line numbers down along
> > >> with my notes. Although there is a way to store a link for text search
> > >> for the current line, I haven't found a way to create a link to a line
> > >> number in the current buffer. Is there anyway to do that? Thanks
> > >
> > > Take a look at org-capture: http://orgmode.org/manual/Capture.html
> 

> The problem is to make sure org-store-link will actually store the line
> number (along with everything else) so that then org-insert-link can
> insert the link in the proper format. I don't think there is a function
> to do that out of the box for line numbers, but you can easily (for some
> value of "easily") write your own. Look in
> 
> (info "(org)Adding hyperlink types")
> 
> for some hints. Briefly, you write a function that checks whether it
> wants to deal with the link or not, and you add it to
> org-store-link-functions. I don't have the time to try it out right now,
> but I believe this should work for what you want.
> 

Following up on this, the following seems to work, although you probably
want to tweak the criterion of when you want *this* function to take
care of links - this particular implementation only applies the line
number treatment to links generated in the file named
"/path/to/the.file.txt" and only that file:

--8<---cut here---start->8---
(defun org-file-lineno-store-link()
  (when (string-equal (buffer-file-name) "/path/to/the.file.txt")
(let* ((link (format "file:%s::%d" (buffer-file-name) 
(line-number-at-pos
  (org-store-link-props
   :type "file"
   :link link

(add-hook 'org-store-link-functions 'org-file-lineno-store-link)
--8<---cut here---end--->8---

Nick




Re: [O] anyway to create link to a line number in a file

2012-02-18 Thread Nick Dokos
Not To Miss  wrote:

> I looked that section carefully and the whole manual briefly. I
> haven't found anything yet. That's why I am asking on the mailing list
> to see if anyone has some workaround.
> 
> On Sat, Feb 18, 2012 at 9:03 AM, Sean O'Halpin  wrote:
> > On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss  wrote:
> >> Hi all,
> >>
> >> I am reading a long text file and want to write down my notes with
> >> org-mode. I extremely would like to put the line numbers down along
> >> with my notes. Although there is a way to store a link for text search
> >> for the current line, I haven't found a way to create a link to a line
> >> number in the current buffer. Is there anyway to do that? Thanks
> >
> > Take a look at org-capture: http://orgmode.org/manual/Capture.html

*Following* a link with a line number is no problem: org does that out
of the box with a link like

[[file:foo.txt::NNN][desc]]

That is actually documented: (info "(org) External links")

The problem is to make sure org-store-link will actually store the line
number (along with everything else) so that then org-insert-link can
insert the link in the proper format. I don't think there is a function
to do that out of the box for line numbers, but you can easily (for some
value of "easily") write your own. Look in

(info "(org)Adding hyperlink types")

for some hints. Briefly, you write a function that checks whether it
wants to deal with the link or not, and you add it to
org-store-link-functions. I don't have the time to try it out right now,
but I believe this should work for what you want.

Nick






Re: [O] anyway to create link to a line number in a file

2012-02-18 Thread Not To Miss
Sorry, I didn't make it more clear. I want to create a link to a
specific line automatically, just as the command "C-c l"
(org-store-link) to automatically create a link to the text of current
line. Sometimes line number is more important for me to record.

On Sat, Feb 18, 2012 at 12:11 PM, Eric Schulte  wrote:
> Not To Miss  writes:
>
>> I looked that section carefully and the whole manual briefly. I
>> haven't found anything yet. That's why I am asking on the mailing list
>> to see if anyone has some workaround.
>>
>
> [[file:filename.txt::6]] jumps to line 6 of filename.txt for me.  I
> don't know if this is documented... if not a documentation patch would
> be appreciated.
>
> Best,
>
>>
>> On Sat, Feb 18, 2012 at 9:03 AM, Sean O'Halpin  
>> wrote:
>>> On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss  wrote:
 Hi all,

 I am reading a long text file and want to write down my notes with
 org-mode. I extremely would like to put the line numbers down along
 with my notes. Although there is a way to store a link for text search
 for the current line, I haven't found a way to create a link to a line
 number in the current buffer. Is there anyway to do that? Thanks
>>>
>>> Take a look at org-capture: http://orgmode.org/manual/Capture.html
>
> --
> Eric Schulte
> http://cs.unm.edu/~eschulte/



-- 
Best,
Zhenjiang



Re: [O] anyway to create link to a line number in a file

2012-02-18 Thread Eric Schulte
Not To Miss  writes:

> I looked that section carefully and the whole manual briefly. I
> haven't found anything yet. That's why I am asking on the mailing list
> to see if anyone has some workaround.
>

[[file:filename.txt::6]] jumps to line 6 of filename.txt for me.  I
don't know if this is documented... if not a documentation patch would
be appreciated.

Best,

>
> On Sat, Feb 18, 2012 at 9:03 AM, Sean O'Halpin  wrote:
>> On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss  wrote:
>>> Hi all,
>>>
>>> I am reading a long text file and want to write down my notes with
>>> org-mode. I extremely would like to put the line numbers down along
>>> with my notes. Although there is a way to store a link for text search
>>> for the current line, I haven't found a way to create a link to a line
>>> number in the current buffer. Is there anyway to do that? Thanks
>>
>> Take a look at org-capture: http://orgmode.org/manual/Capture.html

-- 
Eric Schulte
http://cs.unm.edu/~eschulte/



Re: [O] anyway to create link to a line number in a file

2012-02-18 Thread Not To Miss
I looked that section carefully and the whole manual briefly. I
haven't found anything yet. That's why I am asking on the mailing list
to see if anyone has some workaround.

On Sat, Feb 18, 2012 at 9:03 AM, Sean O'Halpin  wrote:
> On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss  wrote:
>> Hi all,
>>
>> I am reading a long text file and want to write down my notes with
>> org-mode. I extremely would like to put the line numbers down along
>> with my notes. Although there is a way to store a link for text search
>> for the current line, I haven't found a way to create a link to a line
>> number in the current buffer. Is there anyway to do that? Thanks
>
> Take a look at org-capture: http://orgmode.org/manual/Capture.html



-- 
Best,
Zhenjiang



Re: [O] anyway to create link to a line number in a file

2012-02-18 Thread Sean O'Halpin
On Fri, Feb 17, 2012 at 4:54 PM, Not To Miss  wrote:
> Hi all,
>
> I am reading a long text file and want to write down my notes with
> org-mode. I extremely would like to put the line numbers down along
> with my notes. Although there is a way to store a link for text search
> for the current line, I haven't found a way to create a link to a line
> number in the current buffer. Is there anyway to do that? Thanks

Take a look at org-capture: http://orgmode.org/manual/Capture.html



[O] anyway to create link to a line number in a file

2012-02-17 Thread Not To Miss
Hi all,

I am reading a long text file and want to write down my notes with
org-mode. I extremely would like to put the line numbers down along
with my notes. Although there is a way to store a link for text search
for the current line, I haven't found a way to create a link to a line
number in the current buffer. Is there anyway to do that? Thanks

-- 
Best,
Zane