⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 _allinone.au3

📁 autoit 编写的文本摘取器,选中一段文字,按ctrl+F8创建以这段文字命名的目录 按F8创建文字命名的txt文件 按F9复制选中文字到txt.适用于大部分阅读环境
💻 AU3
字号:
#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.2.4.9
 Author:         myName

 Script Function:
	Template AutoIt script.

#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here

#include <File.au3>


$Version = "MyF8F9"
If WinExists($Version) Then Exit  ;防止程序重复运行
AutoItWinSetTitle($Version)
Opt("TrayIconHide", 1)
HotKeySet("^{F8}", "CtrlF8")
HotKeySet("{F8}", "F8F8")
HotKeySet("{F9}", "F9F9")
HotKeySet("^+r", "RunWin")
HotKeySet("^+d", "RunDesk")

;HotKeySet("^\", "readtxt")

FileCreateShortcut ( @ScriptFullPath , @StartupDir & "\F8F9.lnk");建立启动

While 1
    Sleep(100)
	
WEnd

Func RunWin()
Send("{LWIN}r")
EndFunc

Func RunDesk()
Send("{LWIN}d")
EndFunc

Func readtxt();功能未完成
;MsgBox(0,"","")
Send("!{F4}")
Sleep(300)
Send("{F2}{HOME}")
Sleep(300)
Send("_^_")
Sleep(300)
Send("{enter}{down}")
Sleep(300)
Send("{enter}")
EndFunc

;创建目录
Func CtrlF8()
	Opt("TrayIconHide", 0)
Send("{esc}")
sleep(123)
$title = WinGetTitle("") 
_FileWriteLog("_allinone.log","1"&$title&@CRLF)
WinActivate ( $title , "")
sleep(123)
send("^c")
;sleep(123)


$ClipName = ClipGet()
$ClipName = _StrinRe($ClipName)
_FileWriteLog("_allinone.log","2"&$ClipName&@CRLF)
iniWrite("DirFile.ini", "DIR", "SecondDir", $ClipName)
iniWrite("DirFile.ini", "DIR", "ClipName", $ClipName)

$MainDir = IniRead("DirFile.ini","DIR","MainDir","NotFound1")
If FileExists(""& $MainDir  & "\" & $ClipName  &"") Then
Else
     DirCreate(""& $MainDir & "\" & $ClipName  &"")
EndIf
;sleep(500)
TrayTip ( $ClipName, $ClipName,5)
sleep(500)
Opt("TrayIconHide", 1)
;Opt("TrayIconHide", 0)
EndFunc

;创建文本
Func F8F8()
		Opt("TrayIconHide", 0)
	Send("{esc}")
	sleep(123)
	$title = WinGetTitle("") 
	_FileWriteLog("_allinone.log","3"&$title&@CRLF)
	WinActivate ( $title , "")
	sleep(123)
	send("^c")

$ClipName2 = ClipGet()
$ClipName2 = _StrinRe($ClipName2)
 
iniWrite("DirFile.ini", "DIR", "ClipName", $ClipName2)
sleep(100)
$MainDir = IniRead("DirFile.ini","DIR","MainDir","NotFound1")
$SecondDir = IniRead("DirFile.ini","DIR","SecondDir","NotFound1")
$file = FileOpen(""& $MainDir & "\"  & $SecondDir & "\"&$ClipName2&".txt", 1)
If $file = -1 Then
	_FileWriteLog("_allinone.log","111Unable to open file..")
	 MsgBox(0, "Error", "111Unable to open file.")
    Exit
EndIf
FileClose($file)

TrayTip ($ClipName2, $ClipName2,5)

sleep(500)
Opt("TrayIconHide", 1)
EndFunc



Func F9F9()
		Opt("TrayIconHide", 0)
	$MainDir = IniRead("DirFile.ini", "DIR", "MainDir","NotFound")
	$ClipName = IniRead("DirFile.ini", "DIR", "ClipName","NotFound")
	$SecondDir = IniRead("DirFile.ini","DIR","SecondDir","NotFound")
	;$ClipGet0 = IniRead("DirFile.ini", "DIR", "ClipGet0","NotFound")
$file = FileOpen(""& $MainDir & "\"  & $SecondDir & "\"&$ClipName&".txt", 1)
If $file = -1 Then
	_FileWriteLog("_allinone.log","2222Unable to open file..")
	MsgBox(0, "Error", "2222Unable to open file.")
    Exit
EndIf

	Send("{esc}")
	sleep(123)
	$title = WinGetTitle("") 
	WinActivate ( $title , "")
	sleep(123)
	send("^c")
	sleep(123)
	send("^c")
$bak0 = ClipGet()
;iniWrite("DirFile_temp.ini", "Dir", "ClipGet0", $bak0)
;$bak = IniRead("DirFile_temp.ini", "Dir", "ClipGet0","error")
;$ii=$ii+1
;until $bak<>$ClipGet0 or $ii>54

;iniWrite("DirFile.ini", "Dir", "ClipGet0", $bak)

FileWrite($file, $bak0)
FileWrite($file,@CRLF)
FileWrite($file, "--------------------"& @CRLF)
FileClose($file)

TrayTip ($bak0, $bak0,5)
sleep(500)

Opt("TrayIconHide", 1)
EndFunc


Func _StrinRe($ClipName)
;===========对$ClipName进行处理,去除\/:*?"<>|
$ClipName = StringReplace($ClipName, "\", "")
$ClipName = StringReplace($ClipName, "/", "")
$ClipName = StringReplace($ClipName, ":", "")
$ClipName = StringReplace($ClipName, "#", "")
$ClipName = StringReplace($ClipName, "$", "")
$ClipName = StringReplace($ClipName, "!", "")
$ClipName = StringReplace($ClipName, "*", "")
$ClipName = StringReplace($ClipName, "?", "")
$ClipName = StringReplace($ClipName, "=", "")
$ClipName = StringReplace($ClipName, "+", "")
$ClipName = StringReplace($ClipName, "<", "")
$ClipName = StringReplace($ClipName, ">", "")
$ClipName = StringReplace($ClipName, Chr(34), "-")
;Chr(34)=="
$ClipName = StringReplace($ClipName, "|", "")
$ClipName = StringReplace($ClipName, "'", "")
$ClipName = StringReplace($ClipName, " ", "-")
$ClipName = StringReplace($ClipName, @CRLF, "1")
$ClipName = StringReplace($ClipName, "&", "-")
;===========对$ClipName进行处理,去除\/:*?"<>|
Return $ClipName
EndFunc
	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -