adding a "search on text" external tool
This commit is contained in:
parent
78c5d0b687
commit
09be0113ed
|
@ -6,7 +6,8 @@ tools_in_files = \
|
|||
|
||||
tools_in_linux = \
|
||||
open-terminal-here.tool.in \
|
||||
run-command.tool.in
|
||||
run-command.tool.in \
|
||||
search-recursive.tool.in
|
||||
|
||||
tools_in_osx = \
|
||||
open-terminal-here-osx.tool.in
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
[Pluma Tool]
|
||||
_Name=Search
|
||||
Shortcut=<Primary><Shift>f
|
||||
Languages=
|
||||
Applicability=local
|
||||
Input=document
|
||||
Output=output-panel
|
||||
Save-files=nothing
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
#!/bin/bash
|
||||
# Copyright © 2011 Perberos
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by the
|
||||
# Free Software Foundation; either version 2.1 of the License, or (at your
|
||||
# option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
|
||||
# General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License along
|
||||
# with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
|
||||
SEARCHTEXT=`matedialog --entry --title="Search text on files" --text="Text to search"`
|
||||
|
||||
if [ ! "${#SEARCHTEXT}" = 0 ]; then
|
||||
|
||||
OIFS=$IFS; IFS=$'\n' # Backup and set new IFS
|
||||
|
||||
for LINE in `grep -nHIirF -- "$SEARCHTEXT" ./`; do
|
||||
primer_indice=`expr index "$LINE" :`
|
||||
tmp=${LINE:$primer_indice}
|
||||
segundo_indice=`expr index "$tmp" :`
|
||||
linea_codigo=${tmp:$segundo_indice}
|
||||
|
||||
# lugar donde está la palabra
|
||||
posicion=`expr index "$tmp" "$SEARCHTEXT"`
|
||||
|
||||
linea_archivo=${LINE:0:$primer_indice + $segundo_indice - 1}
|
||||
|
||||
echo "${linea_archivo}: ${linea_codigo}"
|
||||
done
|
||||
|
||||
IFS=$OIFS # Restore IFS
|
||||
fi
|
Loading…
Reference in New Issue