Vinagre 3.18.2에 통합된 북마크 기능을 사용하여 VNC 연결을 구성하고 싶습니다. GUI는 분명히 하위 폴더 추가를 지원하지 않기 때문에 살펴보았습니다 ~/.local/share/vinagre/vinagre-bookmarks.xml
. 그러나 문서가 부족하여 XML 구조에 하위 폴더를 추가하는 데 대한 올바른 구문이 무엇인지 알 수 없었습니다. 그래서 vinagre의 소스코드를 살펴보니 VINAGRE_BOOKMARKS_ENTRY_NODE_FOLDER
여러 북마크 관련 C, C 헤더 파일에서 해당 변수가 사용되고 있는 것을 발견했습니다. 그러나 불행하게도 파서 코드에서도 북마크 XML 파일을 편집하기 위한 올바른 구문을 찾을 수 없습니다.
제가 검색한 파일은 다음과 같습니다.
./vinagre/vinagre-window.c ./vinagre/vinagre-bookmarks.c ./vinagre/vinagre-bookmarks-entry.h ./vinagre/vinagre-bookmarks-migration.c ./vinagre/vinagre-bookmarks-tree.c ./vinagre/vinagre-bookmarks-entry.c ./vinagre/vinagre-bookmarks-ui.c
어쨌든 북마크에 하위 폴더를 어떻게 추가하나요?
답변1
답을 찾았습니다vinagre-북마크-마이그레이션
하위 폴더를 가져오려면 다음을 수행하십시오.
<folder name="folder name">[..]</folder>
이 안에는 [..]
프로젝트나 추가 하위 폴더가 있을 수 있습니다.
고쳐 쓰다:
북마크를 구문 분석하기 위해 간단한 XSD 파일을 만들었습니다.
<?xml version="1.0" encoding="utf-8"?>
<!--
Vinagre bookmarks XML Schema Description
Maintainer: Richard Neumann <r dot neumann at homeinfo fullstop de>
XXX: Use Venetian Blind Design
-->
<!--<xs:schema
xmlns="https://wiki.gnome.org/Apps/Vinagre/vinagre-bookmarks.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0"
targetNamespace="https://wiki.gnome.org/Apps/Vinagre/vinagre-bookmarks.xsd">-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0">
<xs:element name="vinagre-bookmarks" type="VinagreBookmarksRoot">
<xs:annotation>
<xs:documentation xml:lang="en">
Root element for vinagre bookmarks
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="VinagreBookmarksRoot">
<xs:annotation>
<xs:documentation xml:lang="en">
Vinagre bookmarks root folder type
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="folder" type="Folder" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">
Sub-folders
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">
Connection items
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Folder">
<xs:annotation>
<xs:documentation xml:lang="en">
Folder type
</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="VinagreBookmarksRoot">
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Item">
<xs:annotation>
<xs:documentation xml:lang="en">
A connection item
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="protocol" type="xs:string"/>
<xs:element name="name" type="xs:string"/>
<xs:element name="host" type="xs:string"/>
<xs:element name="username" type="xs:string"/>
<xs:element name="port" type="xs:unsignedShort"/>
<xs:element name="fullscreen" type="xs:boolean"/>
<xs:element name="width" type="xs:unsignedInt"/>
<xs:element name="height" type="xs:unsignedInt"/>
<xs:element name="view_only" type="xs:boolean"/>
<xs:element name="scaling" type="xs:boolean"/>
<xs:element name="keep_ratio" type="xs:boolean"/>
<xs:element name="depth_profile" type="xs:unsignedByte"/>
<xs:element name="lossy_encoding" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xs:schema>