changes before turning into a flake

This commit is contained in:
2024-10-31 23:43:37 -06:00
parent cf627acdb0
commit bd50a7ce71
77 changed files with 252 additions and 131 deletions

View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<FreeFileSync XmlType="GUI" XmlFormat="14">
<Compare>
<Variant>TimeAndSize</Variant>
<Symlinks>Exclude</Symlinks>
<IgnoreTimeShift/>
</Compare>
<Synchronize>
<Variant>TwoWay</Variant>
<DetectMovedFiles>false</DetectMovedFiles>
<DeletionPolicy>RecycleBin</DeletionPolicy>
<VersioningFolder Style="Replace"/>
</Synchronize>
<Filter>
<Include>
<Item>*</Item>
</Include>
<Exclude>
<Item>\System Volume Information\</Item>
<Item>\$Recycle.Bin\</Item>
<Item>\RECYCLER\</Item>
<Item>\RECYCLED\</Item>
<Item>*\desktop.ini</Item>
<Item>*\thumbs.db</Item>
</Exclude>
<TimeSpan Type="None">0</TimeSpan>
<SizeMin Unit="None">0</SizeMin>
<SizeMax Unit="None">0</SizeMax>
</Filter>
<FolderPairs>
<Pair>
<Left>D:\Comic</Left>
<Right>\\JAWZ-WORKSTATIO\OneDrive\Comic</Right>
</Pair>
</FolderPairs>
<Errors Ignore="false" Retry="0" Delay="5"/>
<LogFolder/>
<PostSyncCommand Condition="Completion"/>
<Gui>
<MiddleGridView>Action</MiddleGridView>
</Gui>
</FreeFileSync>

View File

@@ -0,0 +1,30 @@
[General]
Program=thumbnailme
Date_file=Wed Sep 12 15:57:39 2018
[Settings]
columns=4
rows=4
width=1024
gap=1
formatFile=jpeg
quality=80
blank_skip=0.80
edge_detect=0
[Styles]
additional_title=
background_color=#000000
infotext_checked=true
timestamp_checked=true
infotext_font=Caviar Dreams
timestamp_font=Caviar Dreams
infotext_location=4
timestamp_location=2
infotext_size=12
timestamp_size=10
infotext_color=#ffffff
timestamp_color=#ffffff
shadow_color=#000000
isSameSourceChecked=true
path_output_batchmod=

View File

@@ -0,0 +1,45 @@
[General]
ShowGridLines=0
SaveFilterIndex=1
ShowInfoTip=1
ShowTimeInGMT=0
MarkOddEvenRows=0
AddWildCard.SubfolderDepth=0
AddWildCard.Wildcard=
AddFiles=1
AddFolders=1
ExecuteOptions.ShowWindow=1
ExecuteOptions.ExecuteCommand=
ChangeTime.Created.UseTime=1
ChangeTime.Created.UseDate=1
ChangeTime.Created.Add=0
ChangeTime.Created.AddValue=5
ChangeTime.Created.AddUnit=3
ChangeTime.Created.DateTime=04-03-2020 21:00:34
ChangeTime.Modified.UseTime=0
ChangeTime.Modified.UseDate=0
ChangeTime.Modified.Add=0
ChangeTime.Modified.AddValue=5
ChangeTime.Modified.AddUnit=3
ChangeTime.Modified.DateTime=09-09-2018 15:30:34
ChangeTime.Accessed.UseTime=0
ChangeTime.Accessed.UseDate=0
ChangeTime.Accessed.Add=0
ChangeTime.Accessed.AddValue=5
ChangeTime.Accessed.AddUnit=3
ChangeTime.Accessed.DateTime=09-09-2018 15:30:34
ChangeTime.TimeInGMT=0
ChangeTime.CopyTimeFrom=1
ChangeTime.CopyTimeToCreated=1
ChangeTime.CopyTimeToModified=0
ChangeTime.CopyTimeToAccessed=1
ChangeTime.UseCopyTime=0
ChangeAttr.Archive=1
ChangeAttr.Hidden=3
ChangeAttr.ReadOnly=1
ChangeAttr.System=1
ChangeAttr.Temporary=1
ChangeTime.TimeSequenceMode=0
WinPos=2C 00 00 00 00 00 00 00 01 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF B7 01 00 00 C0 01 00 00 7C 05 00 00 A0 03 00 00
Columns=96 00 00 00 FA 00 01 00 6E 00 02 00 6E 00 03 00 6E 00 04 00 64 00 05 00 5A 00 06 00 5A 00 07 00 C8 00 08 00 78 00 09 00
Sort=2

View File

@@ -0,0 +1,319 @@
BulkFileChanger v1.51
Copyright (c) 2010 - 2017 Nir Sofer
Web site: http://www.nirsoft.net
Description
===========
BulkFileChanger is a small utility that allows you to create files list
from multiple folders, and then make some action on them - Modify their
created/modified/accessed time, change their file attribute (Read Only,
Hidden, System), run an executable with these files as parameter, and
copy/cut paste into Explorer.
BulkFileChanger is a replacement for the old FileDate Changer utility.
System Requirements & Limitations
=================================
* This utility works on any version of Windows, starting from Windows
2000 and up to Windows 10. Both 32-bit and 64-bit systems are supported.
* If you set a date prior to 01/01/1980, Windows Explorer will not
display this date, due to a limitation originally created for old FAT
systems. You can still watch an old file date using other file managers
like 7-zip, using BulkFileChanger utility, or by right-clicking on the
file and choosing 'Properties'.
Versions History
================
* Version 1.51:
o Added 'Fill Date/Time From File' button to the 'Change file time
/ attributes' window. When you click it, you can choose a file and
then the current date/time of this file will be copied to the
date/time fields of the 'Change file time / attributes' window.
* Version 1.50:
o Added /ChangeTimeAttr command-line option which automactially
scans the specified folder and its subfolders and modifies the
date/time/attributes according to the .cfg file, without displaying
any user interface.
o Added /LogFile and /LogFileAppend command-line options which
write all date/time changes and errors into a log file (For using
with /ChangeTimeAttr )
o Added /cfg command-line option for loading another configuration
file instead of the default one.
o Updated the 'Attributes' column to display the following
Attributes: 'I' for 'Not Content Indexed', 'E' for encrypted file,
'X' for 'No Scrub File', and 'V' for 'Integrity Attribute'.
* Version 1.40:
o 'Change Time / Attributes' window: The date/times values are now
stored in the .cfg file.
o 'Change Time / Attributes' window: Added 'Save Settings' button,
for saving the current settings without changing any file.
o You can now drag a file from Windows Explorer into the 'Change
Time / Attributes' window and the created/modified/accessed times of
this file will be copied to the appropriate date/time settings.
* Version 1.35:
o Added 'Run As Administrator' option (Ctrl+F11), which allows you
to easily run BulkFileChanger as administrator on Windows
Vista/7/8/2008.
o BulkFileChanger now can read the EXIF data of CR2 raw files.
* Version 1.33:
o Fixed bug from v1.32: BulkFileChanger stopped working on Windows
2000.
* Version 1.32:
o Fixed BulkFileChanger to display and handle daylight saving time
properly, like Explorer on Windows 7.
* Version 1.31:
o BulkFileChanger now displays file dates prior to 01/01/1980. In
previous versions, BulkFileChanger didn't display these dates in
order to be compatible with Windows Explorer...
* Version 1.30:
o BulkFileChanger now displays an error message if it fails to
change the date/time/attributes of one or more files.
o Added 'Modified-Created Time Difference' column, which displays
the time difference (in hours:minutes:seconds.milliseconds format)
between the created time and the modified time of the file. This time
difference might be interesting in some circumstances. For example:
If you download a new file from the Internet, the file is created at
the moment you start to download it, and its modified time is set to
the time that the last byte was written to the file. This means that
the created/modified time difference represents the duration of
downloading process.
* Version 1.25:
o You can now specify environment variables (For example:
%appdata%) in the folder path to scan ('Add By Wildcard' option).
* Version 1.24:
o Fixed bug: If you added files, and then removed them from the
list, BulkFileChanger failed to add them again.
* Version 1.23:
o Fixed issue: BulkFileChanger failed to copy EXIF properties from
.jpg image to the created/modified/accessed time of the file, On
Windows 7 and Windows 8. The problem is actually in the GDI+ library
of Windows which from unknown reason fails to read these EXIF
properties. So BulkFileChanger now reads the EXIF data directly
instead of using the GDI+ library of Windows.
* Version 1.22:
o Fixed issue: The properties dialog-box and other windows opened
in the wrong monitor, on multi-monitors system.
o Added 'Auto Size Columns+Headers' option, which allows you to
automatically resize the columns according to the row values and
column headers.
o Added 64-bit build.
* Version 1.21:
o Fixed bug: BulkFileChanger failed to display the size and
date/time information for a filename that begins with dot character.
* Version 1.20:
o Added 3 new options into 'Copy Time From': EXIF - Generated Time,
EXIF - Stored Time, and EXIF - Modified Time. You can use these
options to copy the date/time stored inside EXIF data of digital
camera picture into the created/modified time of the file.
* Version 1.15:
o Added 'Date/time sequence mode' option. When it's turned on,
BulkFileChanger will set a different date/time value for every file,
and the 'Add' field will be used to add additional time interval for
every file.
For example, if you set the modified date/time to '07/07/2011
10:12:15' and the add value is set to 1 second, the modified time of
the first file will be set the '07/07/2011 10:12:15', the second file
will be set to '07/07/2011 10:12:16', the third file will be set to
'07/07/2011 10:12:17', and so on...
The order of the files is determined according to the column you
click. So, if for example, you click the filename column and then use
the 'Date/time sequence mode', the date/time values will be set
according to the filename alphabetical order.
* Version 1.10:
o Added the option to copy from one date/time value to another.
(For example, you can copy the modified time into the created time or
the created time into the modified time and accessed time)
* Version 1.05:
o BulkFileChanger now also allows you to change the date/time of a
folder. You can add a folder by dragging it from Explorer or by
adding it with 'Add By Wildcard' feature and 'Add Folders' option
turned on.
o Added 'File Extension' column.
o Added 'Mark Odd/Even Rows' option, under the View menu. When it's
turned on, the odd and even rows are displayed in different color, to
make it easier to read a single line.
* Version 1.02:
o Added support for temporary file attribute.
* Version 1.01:
o Fixed bug: When the find dialog-box was in focus, pressing the
delete key removed the file from the main window.
* Version 1.00: First release.
Using BulkFileChanger
=====================
BulkFileChanger doesn't require any installation process or additional
dll files. In order to start using it, simply run the executable file -
BulkFileChanger.exe
After running BulkFileChanger, you can add files into the list by using
one of the following methods:
* Copy and Paste: Simply copy files from Explorer window (Ctrl+C) and
then paste them into BulkFileChanger (Ctrl+V). You can also copy files
from other utilities of NirSoft, like SearchMyFiles and HashMyFiles.
* Drag From Explorer: You can add files by dragging them from Explorer
window into the main window of BulkFileChanger.
* 'Add Files' option (F2):Add files from 'open file' dialog-box.
* 'Add By Wildcard' option (F3):Add multiple files by specifying
wildcard, path, and subfolder depth to scan. (For Example:
c:\temp\*.txt)
You can also remove files from the list by using 'Remove Selected Files'
option (Del key) or clear the entire files list by using 'Clear Files
List' (Ctrl+L)
After you added the desired files, you can select some of them or all of
them (Ctrl+A) and then use one of the following options:
* Change Time / Attributes (F6): Allows you to modify the
modified/created/accessed time of the selected files. You set them to
specific time/date values or you can add/subtract
days/hours/minutes/seconds from the existing file time. You can also
modify the attributes of the files, like Read-Only, Hidden, and so on.
* Execute Command On Selected Files (F7): Allows you to run any
executable with the selected files as command-line parameter. For
example: if you specify 'c:\temp\MyProgram.exe "%1"' in the execute
command string, BulkFileChanger will run MyProgram.exe for every file
in the list, and the "%1" will be replaced with the full path filename.
* Explorer Copy/Cut: You can use the copy or cut option to copy/move
the selected files into another folder window of Explorer.
* Export Selected Items: You can export the files list into
html/text/html/csv file.
Command-Line Options
====================
/cfg <Filename>
Start BulkFileChanger with the specified configuration file. For example:
BulkFileChanger.exe /cfg "c:\config\bfc.cfg"
/ChangeTimeAttr <Folder> <Wildcard> <Subfolders Depth> <File/Folder Mode>
This command-line option allows you to scan a folder and its subfolders,
and change the date/time/attributes of all files without displaying any
user interface. The change is made according to the last settings stored
in the .cfg file. You can choose to load another .cfg file (Instead of
default) by using the /cfg command-line option.
<Folder> - Specifies the base folder to scan.
<Wildcard> - Specifies the wildcard to determine which files to change.
For example, if you want to only modify the date/time of .exe file,
specify "*.exe". If you want to change all files - simply specify "*".
<Subfolders Depth> - Specifies the depth of subfolders to scan. If you
specify 0, BulkFileChanger will not scan the subfolders.
<File/Folder Mode> - Specifies whether to change the date/time/attributes
of files, folders or both:
0 = Both Files and folders
1 = Files only
2 = Folders only
Here's a few examples:
BulkFileChanger.exe /ChangeTimeAttr "C:\Temp\MyFiles" "*" 5 0
BulkFileChanger.exe /ChangeTimeAttr "C:\Temp\MyFiles" "a*.csv" 0 1
BulkFileChanger.exe /cfg "c:\temp\bfc12.cfg" /ChangeTimeAttr "C:\Temp"
"*" 10 0
BulkFileChanger.exe /LogFile "c:\temp\log1.txt" /ChangeTimeAttr
"C:\MyFiles" "*" 2 0
Warning !!
This command-line option is very powerful, so you should use it
carefully. It's recommended to test it with a single small folder to
check that it works as expcted before running it on a full drive...
/LogFile <Filename>
Specifies a log file to write all actions and errors while running the
/ChangeTimeAttr command.
/LogFileAppend <Filename>
Similar to /LogFile, but if the file already exists, the new log lines
are added to the existing file.
Translating BulkFileChanger to other languages
==============================================
In order to translate BulkFileChanger to other language, follow the
instructions below:
1. Run BulkFileChanger with /savelangfile parameter:
BulkFileChanger.exe /savelangfile
A file named BulkFileChanger_lng.ini will be created in the folder of
BulkFileChanger utility.
2. Open the created language file in Notepad or in any other text
editor.
3. Translate all string entries to the desired language. Optionally,
you can also add your name and/or a link to your Web site.
(TranslatorName and TranslatorURL values) If you add this information,
it'll be used in the 'About' window.
4. After you finish the translation, Run BulkFileChanger, and all
translated strings will be loaded from the language file.
If you want to run BulkFileChanger without the translation, simply
rename the language file, or move it to another folder.
License
=======
This utility is released as freeware. You are allowed to freely
distribute this utility via floppy disk, CD-ROM, Internet, or in any
other way, as long as you don't charge anything for this. If you
distribute this utility, you must include all files in the distribution
package, without any modification !
Disclaimer
==========
The software is provided "AS IS" without any warranty, either expressed
or implied, including, but not limited to, the implied warranties of
merchantability and fitness for a particular purpose. The author will not
be liable for any special, incidental, consequential or indirect damages
due to loss of data or any other reason.
Feedback
========
If you have any problem, suggestion, comment, or you found a bug in my
utility, you can send a message to nirsofer@yahoo.com

View File

@@ -0,0 +1,704 @@
<?xml version="1.0" encoding="utf-8"?>
<key name="Software">
<key name="ConEmu">
<key name=".Vanilla" modified="2018-12-31 12:28:23" build="180528">
<value name="Language" type="string" data="en"/>
<value name="StartType" type="hex" data="02"/>
<value name="CmdLine" type="string" data=""/>
<value name="StartTasksFile" type="string" data=""/>
<value name="StartTasksName" type="string" data="{cmd::Cmder}"/>
<value name="StartFarFolders" type="hex" data="00"/>
<value name="StartFarEditors" type="hex" data="00"/>
<value name="StartCreateDelay" type="ulong" data="100"/>
<value name="ColorTable00" type="dword" data="00222827"/>
<value name="ColorTable01" type="dword" data="009e5401"/>
<value name="ColorTable02" type="dword" data="0004aa74"/>
<value name="ColorTable03" type="dword" data="00a6831a"/>
<value name="ColorTable04" type="dword" data="003403a7"/>
<value name="ColorTable05" type="dword" data="009c5689"/>
<value name="ColorTable06" type="dword" data="0049b6b6"/>
<value name="ColorTable07" type="dword" data="00cacaca"/>
<value name="ColorTable08" type="dword" data="007c7c7c"/>
<value name="ColorTable09" type="dword" data="00f58303"/>
<value name="ColorTable10" type="dword" data="0006d08d"/>
<value name="ColorTable11" type="dword" data="00e5c258"/>
<value name="ColorTable12" type="dword" data="004b04f3"/>
<value name="ColorTable13" type="dword" data="00b87da8"/>
<value name="ColorTable14" type="dword" data="0081cccc"/>
<value name="ColorTable15" type="dword" data="00ffffff"/>
<value name="TextColorIdx" type="hex" data="10"/>
<value name="BackColorIdx" type="hex" data="10"/>
<value name="PopTextColorIdx" type="hex" data="10"/>
<value name="PopBackColorIdx" type="hex" data="10"/>
<value name="ExtendFonts" type="hex" data="00"/>
<value name="ExtendFontNormalIdx" type="hex" data="01"/>
<value name="ExtendFontBoldIdx" type="hex" data="0C"/>
<value name="ExtendFontItalicIdx" type="hex" data="0D"/>
<value name="CursorTypeActive" type="dword" data="000232c1"/>
<value name="CursorTypeInactive" type="dword" data="00823282"/>
<value name="ClipboardDetectLineEnd" type="hex" data="01"/>
<value name="ClipboardBashMargin" type="hex" data="00"/>
<value name="ClipboardTrimTrailing" type="hex" data="02"/>
<value name="ClipboardEOL" type="hex" data="00"/>
<value name="ClipboardArrowStart" type="hex" data="00"/>
<value name="ClipboardAllLines" type="hex" data="01"/>
<value name="ClipboardAllLinesPosix" type="hex" data="00"/>
<value name="ClipboardFirstLine" type="hex" data="01"/>
<value name="ClipboardFirstLinePosix" type="hex" data="00"/>
<value name="ClipboardClickPromptPosition" type="hex" data="00"/>
<value name="ClipboardDeleteLeftWord" type="hex" data="01"/>
<value name="TrueColorerSupport" type="hex" data="01"/>
<value name="VividColors" type="hex" data="01"/>
<value name="FadeInactive" type="hex" data="01"/>
<value name="FadeInactiveLow" type="hex" data="00"/>
<value name="FadeInactiveHigh" type="hex" data="C8"/>
<value name="ConVisible" type="hex" data="00"/>
<value name="UseInjects" type="hex" data="01"/>
<value name="SetDefaultTerminal" type="hex" data="00"/>
<value name="SetDefaultTerminalStartup" type="hex" data="00"/>
<value name="SetDefaultTerminalStartupTSA" type="hex" data="01"/>
<value name="DefaultTerminalAgressive" type="hex" data="01"/>
<value name="DefaultTerminalNoInjects" type="hex" data="00"/>
<value name="DefaultTerminalNewWindow" type="hex" data="00"/>
<value name="DefaultTerminalDebugLog" type="hex" data="00"/>
<value name="DefaultTerminalConfirm" type="hex" data="01"/>
<value name="DefaultTerminalApps" type="string" data="explorer.exe"/>
<value name="ProcessAnsi" type="hex" data="01"/>
<value name="AnsiExecution" type="hex" data="01"/>
<value name="AnsiAllowedCommands" type="multi">
<line data="cmd -cur_console:R /cGitShowBranch.cmd"/>
</value>
<value name="AnsiLog" type="hex" data="00"/>
<value name="AnsiLogPath" type="string" data="%ConEmuDir%\Logs\"/>
<value name="KillSshAgent" type="hex" data="01"/>
<value name="ProcessNewConArg" type="hex" data="01"/>
<value name="ProcessCmdStart" type="hex" data="01"/>
<value name="ProcessCtrlZ" type="hex" data="00"/>
<value name="SuppressBells" type="hex" data="01"/>
<value name="ConsoleExceptionHandler" type="hex" data="00"/>
<value name="UseClink" type="hex" data="01"/>
<value name="StoreTaskbarkTasks" type="hex" data="00"/>
<value name="StoreTaskbarCommands" type="hex" data="00"/>
<value name="JumpListAutoUpdate" type="hex" data="01"/>
<value name="SaveCmdHistory" type="hex" data="00"/>
<value name="SingleInstance" type="hex" data="00"/>
<value name="ShowHelpTooltips" type="hex" data="01"/>
<value name="Multi" type="hex" data="01"/>
<value name="Multi.ShowButtons" type="hex" data="00"/>
<value name="Multi.ShowSearch" type="hex" data="00"/>
<value name="Multi.NumberInCaption" type="hex" data="00"/>
<value name="Multi.CloseConfirmFlags" type="hex" data="04"/>
<value name="Multi.NewConfirm" type="hex" data="01"/>
<value name="Multi.DupConfirm" type="hex" data="01"/>
<value name="Multi.DetachConfirm" type="hex" data="01"/>
<value name="Multi.UseArrows" type="hex" data="00"/>
<value name="Multi.UseNumbers" type="hex" data="01"/>
<value name="Multi.UseWinTab" type="hex" data="00"/>
<value name="Multi.AutoCreate" type="hex" data="00"/>
<value name="Multi.LeaveOnClose" type="hex" data="00"/>
<value name="Multi.HideOnClose" type="hex" data="00"/>
<value name="Multi.MinByEsc" type="hex" data="02"/>
<value name="MapShiftEscToEsc" type="hex" data="01"/>
<value name="Multi.Iterate" type="hex" data="01"/>
<value name="Multi.SplitWidth" type="hex" data="04"/>
<value name="Multi.SplitHeight" type="hex" data="04"/>
<value name="KeyboardHooks" type="hex" data="02"/>
<value name="FontName" type="string" data="Consolas"/>
<value name="FontName2" type="string" data="Lucida Console"/>
<value name="FontAutoSize" type="hex" data="00"/>
<value name="FontSize" type="ulong" data="24"/>
<value name="FontSizeX" type="ulong" data="0"/>
<value name="FontUseDpi" type="hex" data="01"/>
<value name="FontUseUnits" type="hex" data="00"/>
<value name="FontSizeX2" type="ulong" data="0"/>
<value name="FontSizeX3" type="ulong" data="0"/>
<value name="FontCharSet" type="hex" data="00"/>
<value name="Anti-aliasing" type="ulong" data="6"/>
<value name="FontBold" type="hex" data="00"/>
<value name="FontItalic" type="hex" data="00"/>
<value name="Monospace" type="hex" data="01"/>
<value name="CompressLongStrings" type="hex" data="01"/>
<value name="BackGround Image show" type="hex" data="00"/>
<value name="BackGround Image" type="string" data="c:\back.bmp"/>
<value name="bgImageDarker" type="hex" data="FF"/>
<value name="bgImageColors" type="dword" data="ffffffff"/>
<value name="bgOperation" type="hex" data="00"/>
<value name="bgPluginAllowed" type="hex" data="01"/>
<value name="AlphaValue" type="hex" data="E2"/>
<value name="AlphaValueSeparate" type="hex" data="01"/>
<value name="AlphaValueInactive" type="hex" data="BB"/>
<value name="UserScreenTransparent" type="hex" data="00"/>
<value name="ColorKeyTransparent" type="hex" data="00"/>
<value name="ColorKeyValue" type="dword" data="00010101"/>
<value name="UseCurrentSizePos" type="hex" data="01"/>
<value name="AutoSaveSizePos" type="hex" data="01"/>
<value name="Cascaded" type="hex" data="01"/>
<value name="IntegralSize" type="hex" data="00"/>
<value name="WindowMode" type="dword" data="0000051f"/>
<value name="ConWnd X" type="long" data="331"/>
<value name="ConWnd Y" type="long" data="256"/>
<value name="LastMonitor" type="string" data="0,0,1920,1040"/>
<value name="ConWnd Width" type="dword" data="00000074"/>
<value name="ConWnd Height" type="dword" data="0000001a"/>
<value name="16bit Height" type="ulong" data="0"/>
<value name="QuakeStyle" type="hex" data="00"/>
<value name="Restore2ActiveMon" type="hex" data="00"/>
<value name="RestoreInactive" type="hex" data="00"/>
<value name="QuakeAnimation" type="ulong" data="300"/>
<value name="HideCaption" type="hex" data="00"/>
<value name="HideChildCaption" type="hex" data="01"/>
<value name="FocusInChildWindows" type="hex" data="01"/>
<value name="HideCaptionAlways" type="hex" data="00"/>
<value name="HideCaptionAlwaysFrame" type="hex" data="00"/>
<value name="HideCaptionAlwaysDelay" type="ulong" data="2000"/>
<value name="HideCaptionAlwaysDisappear" type="ulong" data="2000"/>
<value name="DownShowHiddenMessage" type="hex" data="00"/>
<value name="DownShowExOnTopMessage" type="hex" data="00"/>
<value name="ConsoleFontName" type="string" data="Lucida Console"/>
<value name="ConsoleFontWidth" type="long" data="3"/>
<value name="ConsoleFontHeight" type="long" data="5"/>
<value name="DynamicBufferHeight" type="hex" data="01"/>
<value name="DefaultBufferHeight" type="long" data="1000"/>
<value name="AutoBufferHeight" type="hex" data="01"/>
<value name="UseScrollLock" type="hex" data="01"/>
<value name="ComSpec.Type" type="hex" data="00"/>
<value name="ComSpec.Bits" type="hex" data="00"/>
<value name="ComSpec.UpdateEnv" type="hex" data="00"/>
<value name="ComSpec.EnvAddPath" type="hex" data="01"/>
<value name="ComSpec.EnvAddExePath" type="hex" data="01"/>
<value name="ComSpec.UncPaths" type="hex" data="01"/>
<value name="ComSpec.Path" type="string" data=""/>
<value name="EnvironmentSet" type="multi">
<line data="set PATH=%ConEmuBaseDir%\Scripts;%PATH%"/>
<line data="set FC_CONFIG_DIR=.\fonts"/>
<line data="set FONTCONFIG_FILE=fonts.conf"/>
<line data="set FONTCONFIG_PATH=.\fonts"/>
</value>
<value name="CTS.Intelligent" type="hex" data="01"/>
<value name="CTS.IntelligentExceptions" type="string" data="far|vim.exe"/>
<value name="CTS.AutoCopy" type="hex" data="01"/>
<value name="CTS.ResetOnRelease" type="hex" data="00"/>
<value name="CTS.IBeam" type="hex" data="01"/>
<value name="CTS.EndOnTyping" type="hex" data="00"/>
<value name="CTS.EndOnKeyPress" type="hex" data="00"/>
<value name="CTS.EraseBeforeReset" type="hex" data="01"/>
<value name="CTS.Freeze" type="hex" data="00"/>
<value name="CTS.SelectBlock" type="hex" data="01"/>
<value name="CTS.SelectText" type="hex" data="01"/>
<value name="CTS.HtmlFormat" type="hex" data="00"/>
<value name="CTS.ForceLocale" type="dword" data="00000000"/>
<value name="CTS.RBtnAction" type="hex" data="03"/>
<value name="CTS.MBtnAction" type="hex" data="00"/>
<value name="CTS.ColorIndex" type="hex" data="E0"/>
<value name="ClipboardConfirmEnter" type="hex" data="01"/>
<value name="ClipboardConfirmLonger" type="ulong" data="200"/>
<value name="FarGotoEditorOpt" type="hex" data="01"/>
<value name="FarGotoEditorPath" type="string" data='far.exe /e%1:%2 "%3"'/>
<value name="HighlightMouseRow" type="hex" data="00"/>
<value name="HighlightMouseCol" type="hex" data="00"/>
<value name="FixFarBorders" type="hex" data="01"/>
<value name="Anti-aliasing2" type="hex" data="00"/>
<value name="FixFarBordersRanges" type="string" data="2013-25C4;"/>
<value name="ExtendUCharMap" type="hex" data="01"/>
<value name="EnhanceGraphics" type="hex" data="01"/>
<value name="EnhanceButtons" type="hex" data="00"/>
<value name="PartBrush75" type="hex" data="C8"/>
<value name="PartBrush50" type="hex" data="96"/>
<value name="PartBrush25" type="hex" data="5A"/>
<value name="PartBrushBlack" type="hex" data="20"/>
<value name="RightClick opens context menu" type="hex" data="02"/>
<value name="RightClickMacro2" type="string" data=""/>
<value name="SendAltTab" type="hex" data="00"/>
<value name="SendAltEsc" type="hex" data="00"/>
<value name="SendAltPrintScrn" type="hex" data="00"/>
<value name="SendPrintScrn" type="hex" data="00"/>
<value name="SendCtrlEsc" type="hex" data="00"/>
<value name="Min2Tray" type="hex" data="00"/>
<value name="AlwaysShowTrayIcon" type="hex" data="00"/>
<value name="SafeFarClose" type="hex" data="01"/>
<value name="SafeFarCloseMacro" type="string" data=""/>
<value name="FARuseASCIIsort" type="hex" data="00"/>
<value name="ShellNoZoneCheck" type="hex" data="00"/>
<value name="FixAltOnAltTab" type="hex" data="00"/>
<value name="UseAltGrayPlus" type="hex" data="01"/>
<value name="DisableMouse" type="hex" data="01"/>
<value name="RSelectionFix" type="hex" data="01"/>
<value name="MouseSkipActivation" type="hex" data="01"/>
<value name="MouseSkipMoving" type="hex" data="01"/>
<value name="MouseDragWindow" type="hex" data="01"/>
<value name="FarHourglass" type="hex" data="01"/>
<value name="FarHourglassDelay" type="ulong" data="500"/>
<value name="Dnd" type="hex" data="01"/>
<value name="DndDrop" type="hex" data="01"/>
<value name="DefCopy" type="hex" data="01"/>
<value name="DropUseMenu" type="hex" data="02"/>
<value name="DragOverlay" type="hex" data="01"/>
<value name="DragShowIcons" type="hex" data="01"/>
<value name="DebugSteps" type="hex" data="01"/>
<value name="DebugLog" type="hex" data="00"/>
<value name="DragPanel" type="hex" data="02"/>
<value name="DragPanelBothEdges" type="hex" data="00"/>
<value name="KeyBarRClick" type="hex" data="01"/>
<value name="StatusBar.Show" type="hex" data="00"/>
<value name="StatusBar.Flags" type="dword" data="00000002"/>
<value name="StatusFontFace" type="string" data="Tahoma"/>
<value name="StatusFontCharSet" type="ulong" data="0"/>
<value name="StatusFontHeight" type="long" data="14"/>
<value name="StatusBar.Color.Back" type="dword" data="00404040"/>
<value name="StatusBar.Color.Light" type="dword" data="00ffffff"/>
<value name="StatusBar.Color.Dark" type="dword" data="00a0a0a0"/>
<value name="StatusBar.Hide.VCon" type="hex" data="00"/>
<value name="StatusBar.Hide.CapsL" type="hex" data="00"/>
<value name="StatusBar.Hide.NumL" type="hex" data="00"/>
<value name="StatusBar.Hide.ScrL" type="hex" data="00"/>
<value name="StatusBar.Hide.VisL" type="hex" data="01"/>
<value name="StatusBar.Hide.Lang" type="hex" data="01"/>
<value name="StatusBar.Hide.KeyHooks" type="hex" data="01"/>
<value name="StatusBar.Hide.TMode" type="hex" data="01"/>
<value name="StatusBar.Hide.RMode" type="hex" data="01"/>
<value name="StatusBar.Hide.WPos" type="hex" data="01"/>
<value name="StatusBar.Hide.WSize" type="hex" data="01"/>
<value name="StatusBar.Hide.WClient" type="hex" data="01"/>
<value name="StatusBar.Hide.WWork" type="hex" data="01"/>
<value name="StatusBar.Hide.WVBack" type="hex" data="01"/>
<value name="StatusBar.Hide.WVDC" type="hex" data="01"/>
<value name="StatusBar.Hide.WMode" type="hex" data="01"/>
<value name="StatusBar.Hide.Style" type="hex" data="01"/>
<value name="StatusBar.Hide.StyleEx" type="hex" data="01"/>
<value name="StatusBar.Hide.hFore" type="hex" data="01"/>
<value name="StatusBar.Hide.hFocus" type="hex" data="01"/>
<value name="StatusBar.Hide.Zoom" type="hex" data="01"/>
<value name="StatusBar.Hide.Dpi" type="hex" data="01"/>
<value name="StatusBar.Hide.ABuf" type="hex" data="00"/>
<value name="StatusBar.Hide.CPos" type="hex" data="00"/>
<value name="StatusBar.Hide.CSize" type="hex" data="00"/>
<value name="StatusBar.Hide.BSize" type="hex" data="00"/>
<value name="StatusBar.Hide.CurX" type="hex" data="00"/>
<value name="StatusBar.Hide.CurY" type="hex" data="00"/>
<value name="StatusBar.Hide.CurS" type="hex" data="00"/>
<value name="StatusBar.Hide.CurI" type="hex" data="01"/>
<value name="StatusBar.Hide.CellI" type="hex" data="01"/>
<value name="StatusBar.Hide.ConEmuPID" type="hex" data="01"/>
<value name="StatusBar.Hide.ConEmuHWND" type="hex" data="01"/>
<value name="StatusBar.Hide.ConEmuView" type="hex" data="01"/>
<value name="StatusBar.Hide.Srv" type="hex" data="00"/>
<value name="StatusBar.Hide.SrvHWND" type="hex" data="01"/>
<value name="StatusBar.Hide.Transparency" type="hex" data="00"/>
<value name="StatusBar.Hide.New" type="hex" data="00"/>
<value name="StatusBar.Hide.Sync" type="hex" data="00"/>
<value name="StatusBar.Hide.Proc" type="hex" data="00"/>
<value name="StatusBar.Hide.Title" type="hex" data="01"/>
<value name="StatusBar.Hide.Time" type="hex" data="01"/>
<value name="StatusBar.Hide.Resize" type="hex" data="00"/>
<value name="Tabs" type="hex" data="01"/>
<value name="TabsLocation" type="hex" data="00"/>
<value name="TabIcons" type="hex" data="01"/>
<value name="OneTabPerGroup" type="hex" data="00"/>
<value name="ActivateSplitMouseOver" type="hex" data="01"/>
<value name="TabSelf" type="hex" data="01"/>
<value name="TabLazy" type="hex" data="01"/>
<value name="TabFlashChanged" type="long" data="8"/>
<value name="TabRecent" type="hex" data="00"/>
<value name="TabDblClick" type="ulong" data="1"/>
<value name="TabBtnDblClick" type="ulong" data="0"/>
<value name="TabsOnTaskBar" type="hex" data="02"/>
<value name="TaskBarOverlay" type="hex" data="01"/>
<value name="TaskbarProgress" type="hex" data="01"/>
<value name="TabCloseMacro" type="string" data=""/>
<value name="TabFontFace" type="string" data="Segoe UI"/>
<value name="TabFontCharSet" type="ulong" data="0"/>
<value name="TabFontHeight" type="long" data="16"/>
<value name="SaveAllEditors" type="string" data=""/>
<value name="ToolbarAddSpace" type="long" data="0"/>
<value name="TabConsole" type="string" data=" %n "/>
<value name="TabModifiedSuffix" type="string" data="[*]"/>
<value name="TabSkipWords" type="string" data="Administrator:|Администратор:"/>
<value name="TabPanels" type="string" data="&lt;%c&gt; %s"/>
<value name="TabEditor" type="string" data="&lt;%c.%i&gt;{%s}"/>
<value name="TabEditorModified" type="string" data="&lt;%c.%i&gt;[%s] *"/>
<value name="TabViewer" type="string" data="&lt;%c.%i&gt;[%s]"/>
<value name="TabLenMax" type="ulong" data="20"/>
<value name="AdminTitleSuffix" type="string" data=" (Admin)"/>
<value name="AdminShowShield" type="hex" data="01"/>
<value name="HideInactiveConsoleTabs" type="hex" data="00"/>
<value name="ShowFarWindows" type="hex" data="01"/>
<value name="TryToCenter" type="hex" data="01"/>
<value name="CenterConsolePad" type="ulong" data="8"/>
<value name="ShowScrollbar" type="hex" data="02"/>
<value name="ScrollBarAppearDelay" type="ulong" data="100"/>
<value name="ScrollBarDisappearDelay" type="ulong" data="1000"/>
<value name="IconID" type="ulong" data="1"/>
<value name="MainTimerElapse" type="ulong" data="10"/>
<value name="MainTimerInactiveElapse" type="ulong" data="1000"/>
<value name="AffinityMask" type="dword" data="00000000"/>
<value name="SkipFocusEvents" type="hex" data="00"/>
<value name="MonitorConsoleLang" type="hex" data="03"/>
<value name="SnapToDesktopEdges" type="hex" data="00"/>
<value name="AlwaysOnTop" type="hex" data="00"/>
<value name="SleepInBackground" type="hex" data="01"/>
<value name="RetardInactivePanes" type="hex" data="00"/>
<value name="MinimizeOnLoseFocus" type="hex" data="00"/>
<value name="DisableFarFlashing" type="hex" data="00"/>
<value name="DisableAllFlashing" type="hex" data="00"/>
<value name="FindText" type="string" data=""/>
<value name="FindMatchCase" type="hex" data="00"/>
<value name="FindMatchWholeWords" type="hex" data="00"/>
<value name="FindTransparent" type="hex" data="01"/>
<value name="PanView.BackColor" type="dword" data="30ffffff"/>
<value name="PanView.PFrame" type="long" data="1"/>
<value name="PanView.PFrameColor" type="dword" data="28808080"/>
<value name="PanView.SFrame" type="long" data="1"/>
<value name="PanView.SFrameColor" type="dword" data="07c0c0c0"/>
<value name="PanView.Thumbs.ImgSize" type="long" data="96"/>
<value name="PanView.Thumbs.SpaceX1" type="long" data="1"/>
<value name="PanView.Thumbs.SpaceY1" type="long" data="1"/>
<value name="PanView.Thumbs.SpaceX2" type="long" data="5"/>
<value name="PanView.Thumbs.SpaceY2" type="long" data="20"/>
<value name="PanView.Thumbs.LabelSpacing" type="long" data="2"/>
<value name="PanView.Thumbs.LabelPadding" type="long" data="0"/>
<value name="PanView.Thumbs.FontName" type="string" data="Tahoma"/>
<value name="PanView.Thumbs.FontHeight" type="long" data="14"/>
<value name="PanView.Tiles.ImgSize" type="long" data="48"/>
<value name="PanView.Tiles.SpaceX1" type="long" data="4"/>
<value name="PanView.Tiles.SpaceY1" type="long" data="4"/>
<value name="PanView.Tiles.SpaceX2" type="long" data="172"/>
<value name="PanView.Tiles.SpaceY2" type="long" data="4"/>
<value name="PanView.Tiles.LabelSpacing" type="long" data="4"/>
<value name="PanView.Tiles.LabelPadding" type="long" data="1"/>
<value name="PanView.Tiles.FontName" type="string" data="Tahoma"/>
<value name="PanView.Tiles.FontHeight" type="long" data="14"/>
<value name="PanView.LoadPreviews" type="hex" data="03"/>
<value name="PanView.LoadFolders" type="hex" data="01"/>
<value name="PanView.LoadTimeout" type="ulong" data="15"/>
<value name="PanView.MaxZoom" type="ulong" data="600"/>
<value name="PanView.UsePicView2" type="hex" data="01"/>
<value name="PanView.RestoreOnStartup" type="hex" data="00"/>
<value name="Update.VerLocation" type="string" data=""/>
<value name="Update.CheckOnStartup" type="hex" data="01"/>
<value name="Update.CheckHourly" type="hex" data="00"/>
<value name="Update.ConfirmDownload" type="hex" data="01"/>
<value name="Update.UseBuilds" type="hex" data="01"/>
<value name="Update.InetTool" type="hex" data="00"/>
<value name="Update.InetToolCmd" type="string" data=""/>
<value name="Update.UseProxy" type="hex" data="00"/>
<value name="Update.Proxy" type="string" data=""/>
<value name="Update.ProxyUser" type="string" data=""/>
<value name="Update.ProxyPassword" type="string" data=""/>
<value name="Update.ExeCmdLine" type="string" data=""/>
<value name="Update.ArcCmdLine" type="string" data=""/>
<value name="Update.DownloadPath" type="string" data="%TEMP%\ConEmu"/>
<value name="Update.LeavePackages" type="hex" data="00"/>
<value name="Update.PostUpdateCmd" type="string" data="echo Last successful update&gt;ConEmuUpdate.info &amp;&amp; date /t&gt;&gt;ConEmuUpdate.info &amp;&amp; time /t&gt;&gt;ConEmuUpdate.info"/>
<key name="HotKeys" modified="2018-12-31 12:28:23" build="180528">
<value name="KeyMacroVersion" type="hex" data="02"/>
<value name="Multi.Modifier" type="dword" data="00000011"/>
<value name="Multi.ArrowsModifier" type="dword" data="0000005b"/>
<value name="MinimizeRestore" type="dword" data="000011c0"/>
<value name="MinimizeRestore2" type="dword" data="00000000"/>
<value name="GlobalRestore" type="dword" data="00000000"/>
<value name="CdExplorerPath" type="dword" data="00000000"/>
<value name="ForcedFullScreen" type="dword" data="12115b0d"/>
<value name="SwitchGuiFocus" type="dword" data="00000000"/>
<value name="SetFocusGui" type="dword" data="00000000"/>
<value name="SetFocusChild" type="dword" data="00000000"/>
<value name="ChildSystemMenu" type="dword" data="000011ff"/>
<value name="CheckUpdates" type="dword" data="00105b55"/>
<value name="Multi.NewConsole" type="dword" data="00000000"/>
<value name="Multi.NewConsoleShift" type="dword" data="00001154"/>
<value name="Multi.CmdKey" type="dword" data="00000000"/>
<value name="Multi.NewWndConfirm" type="dword" data="00000000"/>
<value name="Multi.NewConsolePopup" type="dword" data="00000000"/>
<value name="Multi.NewConsolePopup2" type="dword" data="00000000"/>
<value name="Multi.NewAttach" type="dword" data="00000000"/>
<value name="Multi.NewSplitV" type="dword" data="00000000"/>
<value name="Multi.NewSplitH" type="dword" data="00000000"/>
<value name="Multi.SplitMaximize" type="dword" data="00005d0d"/>
<value name="Multi.SplitSizeVU" type="dword" data="00105d26"/>
<value name="Multi.SplitSizeVD" type="dword" data="00105d28"/>
<value name="Multi.SplitSizeHL" type="dword" data="00105d25"/>
<value name="Multi.SplitSizeHR" type="dword" data="00105d27"/>
<value name="Key.TabPane1" type="dword" data="00000000"/>
<value name="Key.TabPane2" type="dword" data="00000000"/>
<value name="Multi.SplitFocusU" type="dword" data="00005d26"/>
<value name="Multi.SplitFocusD" type="dword" data="00005d28"/>
<value name="Multi.SplitFocusL" type="dword" data="00005d25"/>
<value name="Multi.SplitFocusR" type="dword" data="00005d27"/>
<value name="Multi.SplitSwap" type="dword" data="00125d58"/>
<value name="Multi.SplitSwapU" type="dword" data="00125d26"/>
<value name="Multi.SplitSwapD" type="dword" data="00125d28"/>
<value name="Multi.SplitSwapL" type="dword" data="00125d25"/>
<value name="Multi.SplitSwapR" type="dword" data="00125d27"/>
<value name="Multi.Next" type="dword" data="00000000"/>
<value name="Multi.NextShift" type="dword" data="00000000"/>
<value name="Multi.Recreate" type="dword" data="00000000"/>
<value name="Multi.AltCon" type="dword" data="00000000"/>
<value name="Multi.Pause" type="dword" data="80808013"/>
<value name="Multi.Scroll" type="dword" data="00000000"/>
<value name="Multi.GroupInput" type="dword" data="00005d47"/>
<value name="Multi.GroupInputAll" type="dword" data="00105d47"/>
<value name="Multi.GroupInputKey" type="dword" data="00125d47"/>
<value name="Multi.Detach" type="dword" data="00000000"/>
<value name="Multi.Unfasten" type="dword" data="00000000"/>
<value name="Multi.Close" type="dword" data="00001157"/>
<value name="CloseTabKey" type="dword" data="00000000"/>
<value name="CloseGroupKey" type="dword" data="00000000"/>
<value name="CloseGroupPrcKey" type="dword" data="00000000"/>
<value name="CloseAllConKey" type="dword" data="00000000"/>
<value name="CloseZombiesKey" type="dword" data="00000000"/>
<value name="CloseExceptConKey" type="dword" data="00000000"/>
<value name="CloseToRightKey" type="dword" data="00000000"/>
<value name="KillProcessKey" type="dword" data="00000000"/>
<value name="KillAllButShellKey" type="dword" data="00105b2e"/>
<value name="DuplicateRootKey" type="dword" data="00000000"/>
<value name="CloseConEmuKey" type="dword" data="00001273"/>
<value name="Multi.Rename" type="dword" data="00000000"/>
<value name="AffinityPriorityKey" type="dword" data="00005d41"/>
<value name="Multi.MoveLeft" type="dword" data="00125b25"/>
<value name="Multi.MoveRight" type="dword" data="00125b27"/>
<value name="CTS.VkBlockStart" type="dword" data="00000000"/>
<value name="CTS.VkTextStart" type="dword" data="00000000"/>
<value name="CTS.VkCopyFmt0" type="dword" data="00001143"/>
<value name="CTS.VkCopyFmt1" type="dword" data="00101143"/>
<value name="CTS.VkCopyFmt2" type="dword" data="00000000"/>
<value name="CTS.VkCopyAll" type="dword" data="00000000"/>
<value name="HighlightMouseSwitch" type="dword" data="00005d4c"/>
<value name="HighlightMouseSwitchX" type="dword" data="00005d58"/>
<value name="Multi.ShowTabsList" type="dword" data="00000000"/>
<value name="Multi.ShowTabsList2" type="dword" data="00000000"/>
<value name="ClipboardVkAllLines" type="dword" data="0000102d"/>
<value name="ClipboardVkFirstLine" type="dword" data="00001156"/>
<value name="Key.AltNumpad" type="dword" data="00000000"/>
<value name="DeleteWordToLeft" type="dword" data="00001108"/>
<value name="FindTextKey" type="dword" data="00005d46"/>
<value name="ScreenshotKey" type="dword" data="00000000"/>
<value name="ScreenshotFullKey" type="dword" data="00000000"/>
<value name="ShowStatusBarKey" type="dword" data="00000000"/>
<value name="ShowTabBarKey" type="dword" data="00000000"/>
<value name="ShowCaptionKey" type="dword" data="00000000"/>
<value name="AlwaysOnTopKey" type="dword" data="00000000"/>
<value name="TransparencyInc" type="dword" data="00000000"/>
<value name="TransparencyDec" type="dword" data="00000000"/>
<value name="Key.TabMenu" type="dword" data="00000000"/>
<value name="Key.TabMenu2" type="dword" data="00000000"/>
<value name="Key.Maximize" type="dword" data="00000000"/>
<value name="Key.MaximizeWidth" type="dword" data="00000000"/>
<value name="Key.MaximizeHeight" type="dword" data="00000000"/>
<value name="Key.TileToLeft" type="dword" data="00000000"/>
<value name="Key.TileToRight" type="dword" data="00000000"/>
<value name="Key.JumpActiveMonitor" type="dword" data="00000000"/>
<value name="Key.JumpPrevMonitor" type="dword" data="00000000"/>
<value name="Key.JumpNextMonitor" type="dword" data="00000000"/>
<value name="Key.FullScreen" type="dword" data="0000120d"/>
<value name="Key.SysMenu" type="dword" data="00000000"/>
<value name="Key.SysMenu2" type="dword" data="00001102"/>
<value name="Key.DebugProcess" type="dword" data="00105b44"/>
<value name="Key.DumpProcess" type="dword" data="00000000"/>
<value name="Key.DumpTree" type="dword" data="00000000"/>
<value name="Key.BufUp" type="dword" data="00001126"/>
<value name="Key.BufDn" type="dword" data="00001128"/>
<value name="Key.BufPgUp" type="dword" data="00001121"/>
<value name="Key.BufPgDn" type="dword" data="00001122"/>
<value name="Key.BufHfPgUp" type="dword" data="00005d21"/>
<value name="Key.BufHfPgDn" type="dword" data="00005d22"/>
<value name="Key.BufTop" type="dword" data="00005d24"/>
<value name="Key.BufBottom" type="dword" data="00005d23"/>
<value name="Key.BufPrUp" type="dword" data="00121121"/>
<value name="Key.BufPrDn" type="dword" data="00121122"/>
<value name="Key.BufCursor" type="dword" data="00005d08"/>
<value name="Key.ResetTerm" type="dword" data="00000000"/>
<value name="FontLargerKey" type="dword" data="00000000"/>
<value name="FontSmallerKey" type="dword" data="00000000"/>
<value name="FontOriginalKey" type="dword" data="00001104"/>
<value name="PasteFileKey" type="dword" data="00101146"/>
<value name="PastePathKey" type="dword" data="00101144"/>
<value name="PasteCygwinKey" type="dword" data="00005d2d"/>
<value name="KeyMacro01" type="dword" data="00a01231"/>
<value name="KeyMacro01.Text" type="string" data="Task(1)"/>
<value name="KeyMacro02" type="dword" data="00a01232"/>
<value name="KeyMacro02.Text" type="string" data="Task(2)"/>
<value name="KeyMacro03" type="dword" data="000011d0"/>
<value name="KeyMacro03.Text" type="string" data="FontSetSize(1,2)"/>
<value name="KeyMacro04" type="dword" data="000011d1"/>
<value name="KeyMacro04.Text" type="string" data="FontSetSize(1,-2)"/>
<value name="KeyMacro05" type="dword" data="00a01233"/>
<value name="KeyMacro05.Text" type="string" data="Task(3)"/>
<value name="KeyMacro06" type="dword" data="00a01234"/>
<value name="KeyMacro06.Text" type="string" data="Task(4)"/>
<value name="KeyMacro07" type="dword" data="00a01235"/>
<value name="KeyMacro07.Text" type="string" data="Task(5)"/>
<value name="KeyMacro08" type="dword" data="00a01236"/>
<value name="KeyMacro08.Text" type="string" data="Task(6)"/>
<value name="KeyMacro09" type="dword" data="00a01237"/>
<value name="KeyMacro09.Text" type="string" data="Task(7)"/>
<value name="KeyMacro10" type="dword" data="00a01238"/>
<value name="KeyMacro10.Text" type="string" data="Task(8)"/>
<value name="KeyMacro11" type="dword" data="00a01239"/>
<value name="KeyMacro11.Text" type="string" data="Task(9)"/>
<value name="KeyMacro12" type="dword" data="00000000"/>
<value name="KeyMacro12.Text" type="string" data=""/>
<value name="KeyMacro13" type="dword" data="00000000"/>
<value name="KeyMacro13.Text" type="string" data=""/>
<value name="KeyMacro14" type="dword" data="00000000"/>
<value name="KeyMacro14.Text" type="string" data=""/>
<value name="KeyMacro15" type="dword" data="00000000"/>
<value name="KeyMacro15.Text" type="string" data=""/>
<value name="KeyMacro16" type="dword" data="00000000"/>
<value name="KeyMacro16.Text" type="string" data=""/>
<value name="KeyMacro17" type="dword" data="00000000"/>
<value name="KeyMacro17.Text" type="string" data=""/>
<value name="KeyMacro18" type="dword" data="00000000"/>
<value name="KeyMacro18.Text" type="string" data=""/>
<value name="KeyMacro19" type="dword" data="00000000"/>
<value name="KeyMacro19.Text" type="string" data=""/>
<value name="KeyMacro20" type="dword" data="00000000"/>
<value name="KeyMacro20.Text" type="string" data=""/>
<value name="KeyMacro21" type="dword" data="00000000"/>
<value name="KeyMacro21.Text" type="string" data=""/>
<value name="KeyMacro22" type="dword" data="00000000"/>
<value name="KeyMacro22.Text" type="string" data=""/>
<value name="KeyMacro23" type="dword" data="00000000"/>
<value name="KeyMacro23.Text" type="string" data=""/>
<value name="KeyMacro24" type="dword" data="00000000"/>
<value name="KeyMacro24.Text" type="string" data=""/>
<value name="KeyMacro25" type="dword" data="00000000"/>
<value name="KeyMacro25.Text" type="string" data=""/>
<value name="KeyMacro26" type="dword" data="00000000"/>
<value name="KeyMacro26.Text" type="string" data=""/>
<value name="KeyMacro27" type="dword" data="00000000"/>
<value name="KeyMacro27.Text" type="string" data=""/>
<value name="KeyMacro28" type="dword" data="00000000"/>
<value name="KeyMacro28.Text" type="string" data=""/>
<value name="KeyMacro29" type="dword" data="00000000"/>
<value name="KeyMacro29.Text" type="string" data=""/>
<value name="KeyMacro30" type="dword" data="00000000"/>
<value name="KeyMacro30.Text" type="string" data=""/>
<value name="KeyMacro31" type="dword" data="00000000"/>
<value name="KeyMacro31.Text" type="string" data=""/>
<value name="KeyMacro32" type="dword" data="00000000"/>
<value name="KeyMacro32.Text" type="string" data=""/>
<value name="CTS.VkBlock" type="hex" data="A4"/>
<value name="CTS.VkText" type="hex" data="A0"/>
<value name="CTS.VkAct" type="hex" data="00"/>
<value name="CTS.VkPrompt" type="hex" data="00"/>
<value name="FarGotoEditorVk" type="hex" data="A2"/>
<value name="DndLKey" type="hex" data="00"/>
<value name="DndRKey" type="hex" data="A2"/>
<value name="WndDragKey" type="dword" data="00121101"/>
</key>
<key name="Tasks" modified="2018-12-31 12:28:23" build="180528">
<value name="Count" type="long" data="9"/>
<key name="Task1" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{cmd::Cmder as Admin}"/>
<value name="Flags" type="dword" data="00000003"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=' /icon "%CMDER_ROOT%\icons\cmder.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='*cmd /k ""%ConEmuDir%\..\init.bat" "'/>
</key>
<key name="Task2" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{cmd::Cmder}"/>
<value name="Flags" type="dword" data="00000000"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=' /icon "%CMDER_ROOT%\icons\cmder.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='cmd /k ""%ConEmuDir%\..\init.bat" "'/>
</key>
<key name="Task3" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{PowerShell::PowerShell as Admin}"/>
<value name="Flags" type="dword" data="00000000"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=' /icon "%CMDER_ROOT%\icons\cmder.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='*PowerShell -ExecutionPolicy Bypass -NoLogo -NoProfile -NoExit -Command "Invoke-Expression &apos;. &apos;&apos;%ConEmuDir%\..\profile.ps1&apos;&apos;&apos;"'/>
</key>
<key name="Task4" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{PowerShell::PowerShell}"/>
<value name="Flags" type="dword" data="00000000"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=' /icon "%CMDER_ROOT%\icons\cmder.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='PowerShell -ExecutionPolicy Bypass -NoLogo -NoProfile -NoExit -Command "Invoke-Expression &apos;. &apos;&apos;%ConEmuDir%\..\profile.ps1&apos;&apos;&apos;"'/>
</key>
<key name="Task5" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{bash::mintty as Admin}"/>
<value name="Flags" type="dword" data="00000000"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data='/icon "%ConEmuDir%\..\git-for-windows\usr\share\git\git-for-windows.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='*"%ConEmuDir%\..\git-for-windows\usr\bin\mintty.exe" /bin/bash -l'/>
</key>
<key name="Task6" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{bash::mintty}"/>
<value name="Flags" type="dword" data="00000000"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data='/icon "%ConEmuDir%\..\git-for-windows\usr\share\git\git-for-windows.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='"%ConEmuDir%\..\git-for-windows\usr\bin\mintty.exe" /bin/bash -l'/>
</key>
<key name="Task7" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{bash::bash as Admin}"/>
<value name="Flags" type="dword" data="00000000"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=' /icon "%CMDER_ROOT%\icons\cmder.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='*cmd /c ""%ConEmuDir%\..\git-for-windows\bin\bash" --login -i"'/>
</key>
<key name="Task8" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{bash::bash}"/>
<value name="Flags" type="dword" data="00000000"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data=' /icon "%CMDER_ROOT%\icons\cmder.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='cmd /c ""%ConEmuDir%\..\git-for-windows\bin\bash" --login -i"'/>
</key>
<key name="Task9" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="{WSL::bash}"/>
<value name="Flags" type="dword" data="00000000"/>
<value name="Hotkey" type="dword" data="00000000"/>
<value name="GuiArgs" type="string" data='-icon "%USERPROFILE%\AppData\Local\lxss\bash.ico"'/>
<value name="Active" type="long" data="0"/>
<value name="Count" type="long" data="1"/>
<value name="Cmd1" type="string" data='set "PATH=%ConEmuBaseDirShort%\wsl;%PATH%" &amp; %ConEmuBaseDirShort%\conemu-cyg-64.exe --wsl -cur_console:pm:/srv'/>
</key>
</key>
<key name="Apps" modified="2018-12-31 12:28:23" build="180528">
<value name="Count" type="long" data="0"/>
</key>
<key name="Colors" modified="2018-12-31 12:28:23" build="180528">
<value name="Count" type="long" data="1"/>
<key name="Palette1" modified="2018-12-31 12:28:23" build="180528">
<value name="Name" type="string" data="Monokai"/>
<value name="TextColorIdx" type="hex" data="10"/>
<value name="BackColorIdx" type="hex" data="10"/>
<value name="PopTextColorIdx" type="hex" data="10"/>
<value name="PopBackColorIdx" type="hex" data="10"/>
<value name="ColorTable00" type="dword" data="00222827"/>
<value name="ColorTable01" type="dword" data="009e5401"/>
<value name="ColorTable02" type="dword" data="0004aa74"/>
<value name="ColorTable03" type="dword" data="00a6831a"/>
<value name="ColorTable04" type="dword" data="003403a7"/>
<value name="ColorTable05" type="dword" data="009c5689"/>
<value name="ColorTable06" type="dword" data="0049b6b6"/>
<value name="ColorTable07" type="dword" data="00cacaca"/>
<value name="ColorTable08" type="dword" data="007c7c7c"/>
<value name="ColorTable09" type="dword" data="00f58303"/>
<value name="ColorTable10" type="dword" data="0006d08d"/>
<value name="ColorTable11" type="dword" data="00e5c258"/>
<value name="ColorTable12" type="dword" data="004b04f3"/>
<value name="ColorTable13" type="dword" data="00b87da8"/>
<value name="ColorTable14" type="dword" data="0081cccc"/>
<value name="ColorTable15" type="dword" data="00ffffff"/>
</key>
</key>
</key>
</key>
</key>

View File

@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<XLaunch WindowMode="MultiWindow" ClientMode="NoClient" LocalClient="False" Display="-1" LocalProgram="xcalc" RemoteProgram="xterm" RemotePassword="" PrivateKey="" RemoteHost="" RemoteUser="" XDMCPHost="" XDMCPBroadcast="False" XDMCPIndirect="False" Clipboard="True" ClipboardPrimary="True" ExtraParams="" Wgl="True" DisableAC="False" XDMCPTerminate="False"/>

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -0,0 +1,19 @@
Write-Output 'Chose folder' '1) Desktop' '2) Surface'
$folder = Read-Host -Prompt 'Input your option'
$newColor = Read-Host -Prompt 'Input color'
if (!($newColor.Contains('#'))){
$newColor = "#" + $newColor
}
switch ($folder)
{
'1' {$folder = 'C:\Users\JawZ\OneDrive\Pictures\Gimp\Bookmarks\Desktop'}
'2' {$folder = 'C:\Users\JawZ\OneDrive\Pictures\Gimp\Bookmarks\Surface'}
}
$files = Get-ChildItem -Recurse -Path $folder *.png
foreach ($file in $files){
magick mogrify -format png -fill "$newColor" -colorize 100 $file.FullName
}

View File

@@ -0,0 +1,173 @@
Import-Module PSWriteColor
echo 'tits'
#Directory Variables
switch ($env:COMPUTERNAME){
"WORKSTATION"
{
$baseDir = 'D:\OneDrive\Pictures\MyArt'
}
"SURFACE"
{
$baseDir = 'C:\Users\JawZ\Pictures\My Art'
}
}
$template = "$baseDir\Assets\Template.clip"
$month = Get-Date -UFormat %B
$year = Get-Date -Format yyyy
function Write-Separator{Write-Color '---' -Color DarkGray}
function New-Patreon{
$directory = "$baseDir\Patreon"
Set-Location $directory
Write-Color 'Add number ', '(type 0x)' -Color Yellow, White
$number = Read-Host
Switch ($month){
'1' {$month = 'Jan'}
'01' {$month = 'Jan'}
'2' {$month = 'Feb'}
'02' {$month = 'Feb'}
'3' {$month = 'Mar'}
'03' {$month = 'Mar'}
'4' {$month = 'Apr'}
'04' {$month = 'Apr'}
'5' {$month = 'May'}
'05' {$month = 'May'}
'6' {$month = 'Jun'}
'06' {$month = 'Jun'}
'7' {$month = 'Jul'}
'07' {$month = 'Jul'}
'8' {$month = 'Aug'}
'08' {$month = 'Aug'}
'9' {$month = 'Sep'}
'09' {$month = 'Sep'}
'10' {$month = 'Oct'}
'11' {$month = 'Nov'}
'12' {$month = 'Dec'}
}
$dirName = $month + '_' + $number
$file = $dirName + ' [x].clip'
mkdir $dirName
Copy-Item "$template" "$directory\$dirName\$file"
Set-Location $directory\$dirName\
Invoke-Item .
& ./$file
}
function New-Commission{
$directory = "$baseDir\Commissions\"
Set-Location $directory
Write-Color 'Who is the commissioner?' -Color Yellow
$user = Read-Host
Write-Color 'Add number ', '(type 0x)' -Color Yellow, White
$number = Read-Host
if(!(Test-Path $user)){
mkdir $user
}
$file = '[com] ' + $user + '_' + $number + ' [x].clip'
Copy-Item $template "$user\$file."
Set-Location $directory\$user
Invoke-Item .
& ./$file
}
function New-Personal{
Set-Location $baseDir
Write-Color 'Type filename:' -Color Yellow
$file = Read-Host
Copy-Item "$template" ./$file.clip
Invoke-Item .
& ./$file.clip
}
function New-Paste{
Clear-Host
Write-Color '1) ', 'Suggestion' -Color White, Magenta
Write-Color '2) ', 'Poll (Pin-up)' -Color White, Magenta
Write-Color '3) ', 'Poll (Illustration)' -Color White, Magenta
Write-Color '4) ', 'Pin-up' -Color White, Magenta
Write-Color '5) ', 'Illustration' -Color White, Magenta
Write-Separator
$option2 = Read-Host
Write-Separator
switch ($option2) {
'1'{
$clip = $month + ' Suggestion time!'
$clip
$clip | clip
}
'2'{
$clip = $month + ' Pin-Up poll!'
$clip
$clip | clip
}
'3'{
$clip = $month + ' Illustration poll!'
$clip
$clip | clip
}
'4'{
$clip = $month + ' Pin-up #X (WIP X)'
$clip
$clip | clip
}
'5'{
$clip = $month + ' Illustration #X (WIP X)'
$clip
$clip | clip
}
}
}
function Anonymator{
$nameConflict = @(
'Ronny'
'Tetractys'
'tonio4316'
)
$nameFix = @(
'Anony'
'Anonctys'
'Anon4316'
)
#Rename directories
for ($i = 0; $i -lt $nameConflict.Count; $i++){
$nameFilter = '*' + $nameConflict[$i] + '*'
foreach ($conflictName in Get-ChildItem -Recurse -Directory -Filter $nameFilter){
$newDir = $conflictName.Name.Replace($nameConflict[$i], $nameFix[$i])
if(Test-Path ($newDir)){
foreach ($file in Get-ChildItem -Path $conflictName){Move-Item $file -Destination $newDir}
}
elseif(!(Test-Path ($newDir))){
Write-Separator
Write-Color 'Will rename the directory ', $conflictName.Name, ' into ', $newDir -Color White, Red, White, Green
Rename-Item $conflictName -NewName $newDir
}
}
foreach ($conflictName in Get-ChildItem $nameFilter -File -Recurse){
Write-Color $conflictName.Name, " will be renamed into ", $conflictName.Name.Replace($nameConflict[$i], $nameFix[$i]) -Color Red, White, Green
Rename-Item $conflictName.FullName -NewName $conflictName.Name.Replace($nameConflict[$i], $nameFix[$i])
}
}
}
Write-Color '1) ', 'Patreon' -Color White, Magenta
Write-Color '2) ', 'Commission' -Color White, Magenta
Write-Color '3) ', 'Personal' -Color White, Magenta
Write-Color '4) ', 'Patreon title' -Color White, Magenta
Write-Color '5) ', 'Anonymator' -Color White, Magenta
Write-Separator
$option = Read-Host
Write-Separator
Switch ($option){
"1" {New-Patreon}
"2" {New-Commission}
"3" {New-Personal}
"4" {New-Paste}
"5" {Anonymator}
}

View File

@@ -0,0 +1,95 @@
$downloadDirectory = 'D:\Downloads\'
Set-Location $downloadDirectory
switch -Regex ($args[0]){
<#'music.'{
$YTcommand = "youtube-dl --no-playlist --newline -x --audio-format best --add-metadata --audio-quality 0 $args[0]""
}#>
'youtu'{$YTcommand = "youtube-dl -o ""$downloadDirectory\%(title)s.%(ext)s"" $args[0]"}
'twitter'{$YTcommand = "youtube-dl -o ""$downloadDirectory\%(id)s.%(ext)s"" $args[0]"}
'chaturbate'{
for ($i=1;$i -le 40;$i++){
$waitTimer = 30
$chaturbate = "youtube-dl -o ""$downloadDirectory\%(title)s.%(ext)s"" $args[0]"
Invoke-Expression $chaturbate
$timeMultiply = $waitTimer * $i
$ts = [timespan]::FromSeconds($timeMultiply)
Start-Sleep -Seconds $waitTimer
Write-Host 'Waited for' $ts
}
}
'series'{
$channels = @(
'https://www.youtube.com/user/Worthikids'
'https://www.youtube.com/user/CrazyBorisProduction'
'https://www.youtube.com/c/JelloApocalypse/videos'
'https://www.youtube.com/c/BRFootball/videos'
)
$regexs = @(
'(?i)^bigtop burger'
'(?i)^dungeon dynamite'
'(?i)^epithet erased'
'(?i)^the champions(?! League)'
)
$locations = @(
'D:\OneDrive\Videos\Series\Bigtop Burger'
'D:\OneDrive\Videos\Series\Dungeon Dynamite'
'D:\OneDrive\Videos\Series\Epithet Erased'
'D:\OneDrive\Videos\Series\The Champions'
)
for ($i = 0; $i -lt $channels.Count; $i++){
$channel = $channels[$i]
$location = $locations[$i]
$regex = $regexs[$i]
$channelSeries = "youtube-dl --match-title ""$regex"" -i --ignore-config --add-metadata --embed-subs --all-subs --convert-subs srt --merge-output-format mkv -o ""$location\%(title)s.%(ext)s"" ""$channel"""
Invoke-Expression $channelSeries
}
$Channels = @(
'https://www.youtube.com/channel/UC1DTYW241WD64ah5BFWn4JA/videos'
'https://www.youtube.com/c/ContraPoints/videos'
)
$locations = @(
"D:\OneDrive\Videos\Series\Sam O'Nella"
"D:\OneDrive\Videos\Series\ContraPoints"
)
#Channels Hd
for ($i = 0; $i -lt $channels.Count; $i++){
$channel = $channels[$i]
$location = $locations[$i]
$regex = $regexs[$i]
$channelSeries = "youtube-dl -i --ignore-config --add-metadata --embed-subs --all-subs --convert-subs srt --merge-output-format mkv -o ""$location\%(title)s.%(ext)s"" ""$channel"""
Invoke-Expression $channelSeries
}
#Rhys
$playlists = @(
'https://youtu.be/BhMIUJ-OeaQ?list=PLzxc0OSXCoWxzE6IvnzCcOqlI0puY0513'
'https://youtu.be/ilYzQJ-geCc?list=PLzxc0OSXCoWxhI9_F5ZHgsC2MZ9uyZK8V'
'https://youtu.be/b5S7WPRbVDk?list=PLzxc0OSXCoWwItlpwhY7TOR8RWu8wyQHC'
)
foreach ($playlist in $playlists){
$location = 'D:\OneDrive\Videos\Series\Rhys'
$urlCommand = "youtube-dl -i --ignore-config --add-metadata --recode-video mp4 -o ""$location\%(playlist)s\%(title)s.%(ext)s"" ""$playlist"""
Invoke-Expression $urlCommand
}
#CGkid
$channel = 'https://www.youtube.com/c/CgKid/videos'
$location = 'D:\OneDrive\Videos\Series\CGKid'
$urlCommand = "youtube-dl -f ""best[height<480]"" -i --ignore-config --add-metadata --recode-video mp4 -o ""$location\%(title)s.%(ext)s"" ""$channel"""
Invoke-Expression $urlCommand
}
Default {
$linkCom = "youtube-dl -o ""$downloadDirectory\%(title)s.%(ext)s"" $args[0]"
Invoke-Expression $linkCom
}
}
if ($YTcommand){
Invoke-Expression $YTcommand
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,145 @@
Import-Module PSWriteColor
#Set-Location 'F:\Library\Graphic Novels' #Resets location to root
#Set-Location 'E:\Comic'
#$txtDelete = 'F:\Library\Delete.txt'
function removeEmptyDirectory{
remove-emtpy.ps1 -Path .\ -Remove -VerifyNoEmpty
}
function renamePages{
# Parameter help description
param (
[string]$dirLocation,
[int]$issuePart
)
Set-Location $dirLocation #Set location to the issue directory
$files = Get-ChildItem * -Include '*.jpg', '*.png', '*.jpeg', '*.gif'
for($i = 1; $i -le $files.Count; $i++){ #creates a serialized array of the new file names
$newName = ([string]$issuePart).PadLeft(4,'0') + ([string]$i).PadLeft(4,'0') + $files[$i-1].Extension
#$newName
Rename-Item $files[$i-1] -NewName $newName
}
}
function unzipCBZ{
param (
$cbzFiles
)
$removeEmptyDirectoryDef = $Function:removeEmptyDirectory.ToString()
$renamePagesDef = $Function:renamePages.ToString()
$cbzFiles | ForEach-Object -parallel { #Creates a list of CBZ files on all the subdirectories and runs for each one
#define functions inside the thrad
$Function:removeEmptyDirectory = $using:removeEmptyDirectoryDef
$Function:renamePages = $using:renamePagesDef
Set-Location $_.DirectoryName #Changes location to a children directory to avoid uncompressing into the wrong folders
7z x $_ -o* > $txtDelete
Remove-Item $_.FullName #Removes the CBZ file after extracted
Set-Location $_.BaseName #Set the location to the uncompressed directory
$issueDirectoryLocation = Get-Location #store the issue location for later use
#Remove emtpy directories and creates a check variable
removeEmptyDirectory
$dirDirectories = Get-ChildItem -Directory
#If statements to check and rename files according to how many directories they contain
if (($dirDirectories).Count -gt 0){
for ($i = 0; $i -le ($dirDirectories).Count; $i++){ #system to rename every file according with an increment of which "part" directory of the TPB they belong to
renamePages $dirDirectories[$i] $i
}
Set-Location $issueDirectoryLocation
Get-ChildItem -Recurse -File -Exclude 'ComicInfo.xml' | Move-Item -Destination $issueDirectoryLocation #move files to the root
removeEmptyDirectory
if ((Get-ChildItem -Directory).Count -gt 0){
Get-ChildItem -Recurse -File 'ComicInfo.xml' | Remove-Item
Set-Location $issueDirectoryLocation
removeEmptyDirectory
}
}
elseif (($dirDirectories).Count -eq 0){
$dirLocation = Get-Location
renamePages $dirLocation 0
}
} -ThrottleLimit 15
}
function convertFiles{
Get-ChildItem -Recurse *.jpg | ForEach-Object -parallel { #convert PNG
Set-Location $_.Directory
$fileName = $_.BaseName
magick convert -quality 100 $_ "$fileName.png"
Remove-Item $_
}
Get-ChildItem -Recurse *.png | ForEach-Object -parallel { #convert JPG
Set-Location $_.Directory
$fileName = $_.BaseName
magick convert -quality 100 $_ "$fileName.jpg"
Remove-Item $_
}
}
function partDirs{
param (
$workingDir
)
$dirParts = Get-ChildItem -Directory -Recurse | Where-Object {$_.Name -match 'Part'}
foreach ($dirPart in $dirParts){
Set-Location $dirPart.Parent
$TPBname = $dirPart.Name.Split(' (')
if(!(Test-Path $TPBname[0])){
New-Item -ItemType Directory $TPBname[0]
}
else{
$nameFixed = $TPBname[0] + ' '
$nameFixed
$dirMove = Get-ChildItem -Directory -Exclude $TPBname[0] | Where-Object {$_.Name -match $nameFixed}
if ($dirMove){
$dirMove
$TPBname[0]
Move-Item $dirMove -Destination $TPBname[0]
}
}
}
Set-Location $workingDir ################FIX THIS############
#########################
############
foreach ($dir in Get-ChildItem -Recurse -Directory){
if(test-path($dir)){Set-Location $dir}
$issueDirectoryLocation = Get-Location
if(Get-ChildItem -Directory | Where-Object {$_.Name -match 'Part'}){
$dirRename = Get-ChildItem -Directory
for ($i = 0; $i -le ($dirRename).Count; $i++){ #system to rename every file according with an increment of which "part" directory of the TPB they belong to
renamePages $dirRename[$i] $i
}
Set-Location $issueDirectoryLocation
Get-ChildItem -Recurse -File -Exclude 'ComicInfo.xml' | Move-Item -Destination $issueDirectoryLocation #move files to the root
removeEmptyDirectory
}
}
}
switch ($args[0]) {
'1'{
$cbzFiles = Get-ChildItem *.cbz -Recurse -File
unzipCBZ $cbzFiles
}
'2'{
convertFiles
}
'3'{
Set-Location $args[1]
partDirs $args[1]
}
'4'{
Set-Location 'F:\Library\Comic'
foreach ($dir in Get-ChildItem -Recurse -Directory){
renamePages $dir 0
}
}
}

View File

@@ -0,0 +1,338 @@
D:\OneDrive\Programs\bin\task.ps1
Clear-Host
#Variables
switch ($env:COMPUTERNAME){
"WORKSTATION"
{
$Env:dirDownload = 'F:\Library'
$Env:dirJson = 'F:\Library\gallery-dl'
}
"SURFACE"
{
$Env:dirDownload = 'C:\Users\JawZ\Downloads'
$Env:dirJson = '\\WORKSTATION\Library\gallery-dl'
}
}
$Env:database = "$Env:dirJson\manga.sqlite3"
$mAll= "$Env:dirJson\manga.json"
$mVol = "$Env:dirJson\manga-i(vol).json"
$list = "$Env:dirJson\manga.txt"
$downloadList_1 = "$Env:dirJson\download_1.txt"
$downloadList_2 = "$Env:dirJson\download_2.txt"
$downloadList_3 = "$Env:dirJson\download_3.txt"
$downloadList_4 = "$Env:dirJson\download_4.txt"
$downloadList_5 = "$Env:dirJson\download_5.txt"
$textInfo = (Get-Culture).TextInfo
function removeEmptyDirectory{
remove-emtpy.ps1 -Path .\ -Remove -VerifyNoEmpty
}
function Write-Separator{Write-Color '---' -Color DarkGray}
function email ($body){
$EmailFrom = "jawzoned@gmail.com"
$EmailTo = "captainjawz@outlook.com"
$Subject = "New files on the library! "
$SMTPServer = "smtp.gmail.com"
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("jawzoned", "od3g4t!T&yJq");
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, "$Body")
}
function automaticManga{#Download manga automatically
foreach ($webtoon in [System.IO.File]::ReadLines("$list")){
if ($webtoon | Select-String -Pattern 'webtoon'){
gallery-dl --sleep 5 --download-archive $Env:database -c "$mAll" --chapter-range '1' "$webtoon"
}
}
foreach ($manga in [System.IO.File]::ReadLines("$list")){
if ($manga | Select-String -Pattern 'manga'){
gallery-dl --sleep 5 --download-archive $Env:database -c "$mAll" --chapter-range '1-5' "$manga"
}
}
Set-Location $Env:dirDownload\New
removeEmptyDirectory
$newDirectories = Get-ChildItem -Path "$Env:dirDownload\New" -Directory -Recurse
if ($newDirectories){
$body = $newDirectories.Name | Out-String
email $body
}
}
function mangaRange($range){#Download manga automatically
$counter = -1
Write-Separator
foreach ($line in [System.IO.File]::ReadLines($list)){
$counter++
if ($line | Select-String -Pattern 'manga'){
$lineName = $line.Substring(($line.LastIndexOf('/')+1)).Replace("-", " ").Replace("_", " ") #Fix the name so it is presentable
$lineName = $textInfo.ToTitleCase($lineName)
Write-Color "$counter) ", "$lineName" -Color White, Yellow
}
}
Write-Separator
Write-Color 'Make a choice:' -C White
Write-Separator
$selection = Read-Host
Clear-Host
#[string]$range = "'" + $range + "'"
$line = [System.IO.File]::ReadLines($list) | Select-Object -Index $selection
gallery-dl --download-archive $Env:database -c $mAll --chapter-range $range $line
Set-Location $Env:dirDownload\New
removeEmptyDirectory
}
$DO = $args[0]
if($DO){
Switch($DO){
'a'{automaticManga}
'edit'{
Write-Color '1) ', 'Edit manga list' -C White, Yellow
Write-Color '2) ', 'Edit download list 1' -C White, Yellow
Write-Color '3) ', 'Edit download list 2' -C White, Yellow
Write-Color '4) ', 'Edit download list 3' -C White, Yellow
Write-Color '5) ', 'Edit download list 4' -C White, Yellow
Write-Color '6) ', 'Edit download list 5' -C White, Yellow
Write-Separator
$selectOperation = Read-Host
switch($selectOperation){
'1'{Invoke-Item $list}
'2'{Invoke-Item $downloadList_1}
'3'{Invoke-Item $downloadList_2}
'4'{Invoke-Item $downloadList_3}
'5'{Invoke-Item $downloadList_4}
'6'{Invoke-Item $downloadList_5}
}
}
}
}
else{
#Menu
Write-Color '1) ', 'Update Manga custom range' -C White, Yellow
Write-Color '2) ', 'Update comic from list' -C White, Yellow
Write-Color '3) ', 'Update everything' -C White, Yellow
Write-Color '4) ', 'Download individual comic/manga' -C White, Yellow
Write-Color '5) ', 'Download individual comic/manga per Volume' -C White, Yellow
Write-Color '6) ', 'Download batch' -C White, Yellow
Write-Color '7) ', 'Sort list file'-C White, Yellow
Write-Separator
#Actions
if ((Test-Path $Env:database) -and (Test-Path $mAll) -and (Test-Path $mVol) -and (Test-Path $list) -and (Test-Path $Env:dirDownload)){
$selectOperation = Read-Host
Write-Separator
switch ($selectOperation){
'1' {
Write-Color 'Insert a custom range ', '(ex 1-10)' -C Gray, DarkGray
Write-Separator
$range = Read-Host
mangaRange $range
}
'2' { #Update comic
$userInput = ''
Do {
Clear-Host
$counter = -1
foreach ($line in [System.IO.File]::ReadLines($list)) { #Print each lines from the list containing Comic pattern
$counter++
if ($line | Select-String -Pattern 'readcomiconline') {
$lineName = $line.Substring(($line.LastIndexOf('/')+1)).Replace("-", " ").Replace("_", " ") #Fix the name so it is presentable
$lineName = $textInfo.ToTitleCase($lineName)
Write-Color "$counter) ", "$lineName" -Color White, Yellow
}
}
Write-Separator
Write-Color 'Make a selection:' -C White
Write-Separator
$selection = Read-Host
Clear-Host
$line = [System.IO.File]::ReadLines($list) | Select-Object -Index $selection
$lineName = $line.Substring(($line.LastIndexOf('/')+1)).Replace("_", " ").Replace("-"," ") #Fix name so it is presentable
$lineName = $textInfo.ToTitleCase($lineName)
Write-Color 'Your selection is: ', $lineName -C White, Yellow
Write-Separator
Write-Color 'Is your choice correct?', '(y/n)' -C White, DarkGray
Write-Separator
$userInput = Read-Host #Ask user if selection is correct
} while (($userInput -eq '') -or ($userInput -eq 'n')) #if selection is incorrect reprint the list
Clear-Host
gallery-dl --download-archive $Env:database -c $mAll --chapter-range '1' "$line"
}
'3'{
Clear-Host
gallery-dl --download-archive $Env:database -c "$mAll" -i "$list"
}
'4'{
Clear-Host
Write-Separator
Write-Color 'Enter link' -C White
Write-Separator
$link = Read-Host
Write-Separator
Write-Color 'Do you want to use the Database?', '(y/n)' -C White, DarkGray
Write-Separator
$useDB = Read-Host
Write-Separator
Clear-Host
if ($useDB -eq 'y'){
gallery-dl --download-archive $Env:database -c "$mAll" "$link"
}
else{
gallery-dl -c "$mAll" "$link"
}
}
'5'{
Clear-Host
Write-Color 'Enter link:' -C White
Write-Separator
$link = Read-Host
Write-Separator
Clear-Host
gallery-dl --download-archive $Env:database -c "$mVol" "$link"
}
'6'{
#$date = get-date -Format '(ddMMyyy_hhmm)'
#$log = "$Env:dirJson\logs\log $date.txt"
Clear-Host
Write-Color 'Which list do you want to use?' -C White
Write-Separator
$listNumber = Read-Host
switch ($listNumber) {
'1'{gallery-dl --sleep 0 -c "$mAll" -i "$downloadList_1"}
'2'{gallery-dl --sleep 0 -c "$mAll" -i "$downloadList_2"}
'3'{gallery-dl --sleep 0 -c "$mAll" -i "$downloadList_3"}
'4'{gallery-dl --sleep 0 -c "$mAll" -i "$downloadList_4"}
'5'{gallery-dl --sleep 2 --download-archive $Env:database -c "$mAll" -i "$downloadList_5"}
}
}
'7'{
$finalContent = @()
$content = (Get-Content $list).ToLower() | Sort-Object | Select-Object -Unique
foreach ($line in $content){
[string]$line = $line
<#$line = $line.Replace('http:', 'https:')
if ($line -Match '\/$'){
$line = $line.TrimEnd('/')
}#>
$finalContent += $line
}
$finalContent -match '\S' > $list
}
}
}
else {
Clear-Host
Write-Output 'ERROR: One of the configuration files is missing'
Write-Output "Database"
Test-Path $Env:database
Write-Output "manga.json"
Test-Path $mAll
Write-Output "manga-1(vol).json"
Test-Path $mVol
Write-Output "Manga list.txt"
Test-Path $list
Write-Output "Download directory"
Test-Path $Env:dirDownload
}
}
function Capitalize{
#Set-Location 'F:\Library\New'
<#foreach ($directory in Get-ChildItem -Recurse -Directory){
Set-Location $directory
$capitalizeFiles = Get-ChildItem -File
ReNamer.exe /silent /rename Capitalize $capitalizeFiles
Wait-Process -Name "ReNamer"
}#>
Set-Location 'F:\Library\New'
foreach ($directory in Get-ChildItem -Directory -Recurse){
$directory.FullName
ReNamer.exe /silent /rename Capitalize $directory.FullName
Wait-Process -Name "ReNamer"
}
}
function moveSeries{
$serieLocationNames= @(
"Amory Wars"
"Batman"
"Borderlands"
"Brit"
"Clive Barker"
"Colder"
"Constantine"
"Critical Role"
"Dark Ark"
"Deadpool"
"Dicks"
"Ether"
"Fables"
"Grimm Fairy Tales"
"Guardians of the Galaxy"
"Gwenpool"
"Hack Slash"
"Harley Quinn"
"Hellboy"
"Hercules"
"Joker"
"Justice League"
"Kick-Ass"
"Lazarus"
"Lobo"
"Mad Max"
"Midnighter"
"Nailbiter"
"Pilot Season"
"Punisher"
"Rumble"
"Sonic"
"Star Wars"
"Suicide Squad"
"The Boys"
"The Last Zombie"
"The Realm"
"The Walking Dead"
"Thor"
"Transformers"
"Venom"
"Vikings"
"WWE"
"X-Men"
"Wolverine"
"Battle Angel Alita"
"Battle Through The Heavens"
"Boku No Hero Academia"
"Dr. Stone"
"Franken Fran"
"Kakegurui"
"Kami-Sama No Iutoori"
"Shaman King"
"Tensei Shitara Slime Datta Ken"
"Touhou"
)
foreach ($serieLocationName in $serieLocationNames){
$testPathComicLocation = 'F:\Library\New\Comic\' + $serieLocationName
$testPathMangaLocation = 'F:\Library\New\Manga\' + $serieLocationName
if(Test-Path $testPathComicLocation){
$files = Get-ChildItem -Path $testPathComicLocation
$newDir = $testPathComicLocation + '\' + $serieLocationName
if(!(Test-Path $newDir)){mkdir $newDir}
Move-Item $files $newDir
}
if(Test-Path $testPathMangaLocation){
$files = Get-ChildItem -Path $testPathMangaLocation
$newDir = $testPathMangaLocation + '\' + $serieLocationName
if(!(Test-Path $newDir)){mkdir $newDir}
Move-Item $files $newDir
}
}
}
Clear-Host
Capitalize
moveSeries

View File

@@ -0,0 +1,134 @@
<#
.SYNOPSIS
Svendsen Tech's generic script for removing empty directories from a
directory tree structure.
Finds or removes/deletes empty directories recursively from the drive or
directory you specify.
You will need to use the -VerifyNoEmpty parameter or multiple
runs to get rid of nested empty directories. See the -VerifyNoEmpty parameter's
description for further details.
This isn't the most efficient approach as the ones I can think of seem to
increase the script's complexity considerably. It should be useful for a
multitude of use cases.
Author: Joakim Svendsen
.PARAMETER Path
Required. Base root path to iterate recursively.
.PARAMETER Find
Default behaviour where it just prints. Overrides -Remove if both are specified.
.PARAMETER Remove
Removes all empty dirs (as in actually deletes them with Remove-Item).
.PARAMETER VerifyNoEmpty
Makes the script run until no empty directories are found. This is in order
to handle nested empty directories, as in a directory that currently only
contains an empty directory would be empty after the first run/iteration and
need to be remove in a subsequent run. Specifying this parameter causes the
script to run until it's done a complete run without finding a single empty
directory. This might be time-consuming depending on the size of the directory
tree structure.
If there is an error while deleting a directory, it will not run again, to
avoid an infinite loop.
#>
param(
[Parameter(Mandatory=$true)][string] $Path,
[switch] $Find,
[switch] $Remove,
[switch] $VerifyNoEmpty
)
Set-StrictMode -Version 2.0
$ErrorLog = 'remove-empty-dirs-error.log'
######## START OF FUNCTIONS ########
function Iterate-And-Remove-Empty-Dirs {
$FoundEmpty = $false
#Write-Host "Iterating '$Path'"
Get-ChildItem -Force -Recurse -Path $Path | Where-Object { $_.PSIsContainer } | ForEach-Object {
if ($Find -or -not $Remove) {
if (-not (Get-ChildItem -Force $_.FullName)) {
# Directory should be empty
$_.FullName + ' is empty'
}
}
# This is the dangerous part
elseif ($Remove) {
if (-not (Get-ChildItem -Force $_.FullName)) {
$FoundEmpty = $true
# Directory should be empty
Remove-Item -Force $_.FullName
if (-not $?) {
Write-Host -ForegroundColor Red "Error: $(Get-Date): Unable to delete $($_.FullName): $($Error[0].ToString))"
"Error: $(Get-Date): Unable to delete $($_.FullName): $($Error[0].ToString))" | Out-File -Append $ErrorLog
$FoundEmpty = $false # avoid infinite loop
}
else {
Write-Host -ForegroundColor Green "$(Get-Date): Successfully deleted the empty folder: $($_.FullName)"
}
}
}
} # end of ForEach-Object
$FoundEmpty
} # end of function Iterate-And-Remove-Empty-Dirs
######## END OF FUNCTIONS ########
if (-not (Test-Path -Path $Path -PathType Container)) {
"The specified path does not exist. Exiting with code 1."
exit 1
}
if ($Remove -and $VerifyNoEmpty) {
$Counter = 0
while (($OutsideFoundEmpty = Iterate-And-Remove-Empty-Dirs) -eq $true) {
$Counter++
#Write-Host -ForegroundColor Yellow "-VerifyNoEmpty specified. Found empty dirs on run no ${Counter}. Starting next run."
}
$Counter++
#Write-Host "Made $Counter runs in total"
}
else {
Iterate-And-Remove-Empty-Dirs
}