为了一眼看出文件夹是什么项目,我用程序给文件夹加了个备注

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第5天,点击查看活动详情

前言

对于开发人员来说,文件夹的命名通常都是英文的,如果是自己开发的项目,我们很容易识别出哪个文件夹对应哪个项目。但随着新项目的创建及从Github/Gitee下载回来的项目增多,事后在想找某一个项目的时候,就会愈发困难,如果能给每一个文件夹加上一个中文备注这对项目的查找是很有益处的

文件夹加备注后的效果

image.png
可以看得出添加备注后,每一个文件夹的项目让人一目了然

本文内容

介绍给文件夹添加备注的两种方式

方式一:介绍不用代码直接给文件夹添加备注的方法
方式二: 使用Python开发一个exe程序,并实现鼠标右键给文件夹添加备注

方法一

1、进入需要添加备注的文件夹。随便创建一个txt文档,写入如下内容

[.ShellClassInfo]
InfoTip=这个是需要备注的内容
复制代码

2、将创建的txt另存为desktop.ini,编码选择ANSI

image.png

3、改变文件夹图标可以快速查看到效果

右键文件夹->属性->自定义->更改图标,选择一个图片后,点确定->应用 后备注就生效了

image.png

4、隐藏desktop.ini

image.png

这个就是手动给文件夹添加备注的方式了,单个文件夹还可以接受,文件夹一多,就很繁琐了。如果能在需要添加备注的文件夹鼠标右键后,出现“备注”选择,点击后弹窗输入备注内容那就方便多了。下面方法二就能实现这个功能。

方法二

使用Python开发一个exe程序

image.png

代码内容是使用tkinter创建了一个仅包含 文本输入框确认按钮 的窗口,通过sys.argv[1]获取鼠标右键的文件夹路径及文本输入框输入的备注内容后,使用代码在指定的文件夹内创建desktop.ini并写入内容。

# -*- coding: utf-8 -*
# Filename: comment.py
# DirectoryRemark
__author__ = 'CJC'

import sys
import os
from _xxsubinterpreters import destroy
from tkinter import *

# 获取系统编码,确保备注不会出现乱码
from tkinter import messagebox

from dateutil.tz import win

defEncoding = sys.getfilesystemencoding()


# 将代码中的字符转换为系统编码
def sysEncode(content):
    return content.encode(defEncoding).decode(defEncoding)


def runCommand(command):
    # 用 system 运行系统命令
    os.system(command)


def re_enterMessage(message):
    print(sysEncode(u" * " + message))
    print(sysEncode(u" * 重新输入或按 ctrl + c 退出程序") + os.linesep)


def getSettingFilePath(path):
    return path + os.sep + 'desktop.ini'


def addCommentToFolder(path, comment):
    content = sysEncode(u'[.ShellClassInfo]' + os.linesep + 'InfoTip=')
    # 开始设置备注信息
    setting_file_path = getSettingFilePath(path)
    with open(setting_file_path, 'w') as f:
        f.write(content)
        f.write(sysEncode(comment + os.linesep))

    # 添加保护
    runCommand('attrib ' + setting_file_path + ' +s +h')
    runCommand('attrib ' + path + ' +s ')

    messagebox.showinfo(title='提示', message='备注添加成功~可能过一会才会显示,不要着急')
    top.quit()
    top.destroy()


def addComment(path=None, comment=None):
    setting_file_path = getSettingFilePath(path)

    # 判断设置文件是否已经存在
    if os.path.exists(setting_file_path):
        # 去除保护属性
        runCommand('attrib ' + setting_file_path + ' -s -h')

    addCommentToFolder(path, comment)


def submit():
    if len(sys.argv) < 2:
        messagebox.showinfo(title='提示', message='需要获取文件夹路径')
        return
    text = E1.get()
    if not text:
        messagebox.showinfo(title='提示', message='请输入备注')
        return

    addComment(sys.argv[1], text)


top = Tk()
top.title("备注1.0")
top.geometry("235x33+900+600")  # 距离屏幕左上角(400, 200)
L1 = Label(top, text="备注名:")
L1.grid(row=1, column=0)
E1 = Entry(top, bd=1)
E1.grid(row=1, column=10)
B = Button(top, text="确认", command=submit)
B.grid(row=1, column=40)

# 进入消息循环
top.mainloop()

复制代码

打包exe

使用pyinstaller打包

pyinstaller -F xxxx.py -w
复制代码

给文件夹添加鼠标右键备注菜单

image.png

步骤1

运行regedit打开注册表编译器,并进入此路径计算机\HKEY_CLASSES_ROOT\Directory\shell

image.png

image.png

步骤2

在shell上右键,选择【新建】【项】,输入一个名称,如remark

image.png

在刚创建的remark上右键,选择【新建】【字符串值】,之后双击其名称(默认),输入“备注”,这时鼠标在文件夹右键后菜单里就会出现【备注】选项。一样的操作把应用图标Icon添加上,数据为exe程序的路径。

image.png

步骤3

在刚创建的remark上右键,选择【新建】【项】,文件夹名称为:command
在刚创建的command 上右键,选择【新建】【字符串值】,数据内容为:

"F:\xxx\xxx.exe" "%1"
复制代码

第一个是exe程序的文件路径,中间用空格隔开,然后是"%1"。这个"%1",对应到python代码里就能通过sys.argv[1]获取到文件夹的路径了。

到这里就完成了所有的操作了,当需要给某个文件夹添加备注时,只需要在文件夹上 右键 ,选择【备注】,在弹窗后输入备注内容,确认后就能查看到备注内容了。

显示备注

文件夹的【备注】字段,可能没有显示在菜单栏,需要手动将其显示出来。

image.png

至此,给文件夹添加一个鼠标右键添加备注的方式就介绍完了

最后

给文件夹添加备注在我看来是一个比较简单方便管理文件夹的方式,如果你有更好的方式也请评论分享

感谢阅读~

参考:piratf/windows-folder-remark: 一个在 windows 下给文件夹添加备注的程序 (github.com) 在此程序上修改和扩展了GUI显示和鼠标右键操作

猜你喜欢

转载自juejin.im/post/7110168639273173006