freedesktop_desktop_entry 0.6.1 copy "freedesktop_desktop_entry: ^0.6.1" to clipboard
freedesktop_desktop_entry: ^0.6.1 copied to clipboard

A Dart package for parsing freedesktop (XDG) desktop entries on Linux.

example/main.dart

import 'dart:io';

import 'package:freedesktop_desktop_entry/freedesktop_desktop_entry.dart';

void main() async {
  Directory.current = "test/desktop_entry_files/";
  final file = File("desktop-entry-1.desktop");

  DesktopEntry desktopEntry = await DesktopEntry.parseFile(file);

  LocalizedDesktopEntry localizedDesktopEntry = desktopEntry.localize(lang: 'fr', country: 'BE');
  String? frenchName = localizedDesktopEntry.entries[DesktopEntryKey.name.string];
  print(frenchName);

  String? defaultName = desktopEntry.entries[DesktopEntryKey.name.string]?.value;
  print(defaultName);

  List<String>? frenchKeywords = localizedDesktopEntry.entries[DesktopEntryKey.keywords.string]?.getStringList();
  print(frenchKeywords);

  List<String>? englishKeywords =
      desktopEntry.entries[DesktopEntryKey.keywords.string]?.localizedValues[Locale(lang: 'en')]?.getStringList();
  print(englishKeywords);

  print(desktopEntry.id);

  final allFiles = await parseAllInstalledDesktopFiles();
  print(allFiles.length);
}
3
likes
120
points
114
downloads

Publisher

unverified uploader

Weekly Downloads

A Dart package for parsing freedesktop (XDG) desktop entries on Linux.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

collection, equatable, fast_immutable_collections, freezed_annotation, path

More

Packages that depend on freedesktop_desktop_entry