6

I'm writing a simple plugin for Sublime Text 3 and need to get the contents of the currently selected line. I can use

selection = sublime.Region(self.view.sel()[0].begin(), self.view.sel()[0].end())

to get the currently highlighted section, but is there a way to select or return the contents of the entire current line without manually selecting all of it?

The 'duplicate' example on this page does what I want, but seems to be broken in ST3. When I run it I get the error TypeError: run() missing 1 required positional argument: 'args'.

mikeybeck
  • 582
  • 2
  • 15
  • 27

1 Answers1

12

I believe what you're after is view.substr(view.line(view.sel()[0]))

This will return the text of the current line.

  • 4
    I believe you're right, sir! Thanks for that. I had to add `self` before each `view...` though, so it became `self.view.substr(self.view.line(self.view.sel()[0]))` – mikeybeck May 08 '15 at 05:02