ShowItem contains several config and mapping files.

Almost all aspects about the plugin (settings and messages) can be changed in the config.yml (includes comments on each individual option) and the lang files in the languages folder. (All default language files can also be found on the config gist)

The other yml files (transmapping.yml, iconrpmapping.yml and iconrpmapping-flattening.yml) are used for mapping the bukkit materials to translation keys for multi language support and for the chat icons.

Item Blocker

You can define which items players are able to show and which not. These settings can be defined in the “block” section of the config.yml:

# Block certain items from getting shown.
# Can be bypassed with showitem.blockbypass and showitem.blockbypass.<blockname>
  # Whether or not this match is inverted (match only items that don't match the values)
  inverted: false
  # List of materials to block
  # Materials:
  material: []
  # - STONE
  # Block items with certain strings in their names from getting shown (case-insensitive)
  # r= prefix indicates that the string should be handled as a regex
  name: []
  # - "name 1"
  # - "r=name \\d"
  # Block items with certain strings in the lore from getting shown (case-insensitive)
  # r= prefix indicates that the string should be handled as a regex
  lore: []
  # - "name 1"
  # - "r=name \\d"
  # Item durability value, can use comparators, <x, >x, =x, !=x or just equal a single number
  # An empty string matches all durabilities
  # Also supports chaining of comparators with a comma. E.g. >5,<20 for between 5 and 20
  durability: ""
  # Block items with the unbreakable tag
  unbreakable: false
  # Block items with certain enchantments, can block both all or only certain levels
  # Names:
  # Can take the same comparators as the durability for the level
  enchantments: []
  # - "DAMAGE_ALL"
  # - "ARROW_DAMAGE:>2"
  # Serialize the item to YAML and filter it with regex.
  # This is only for advanced users and is less efficient, leave empty to disable.
  serialized: ""

    # Block only specific items that match certain block types. All global types can be used.
    # Can by bypassed with showitem.blockbypass.specific.<name> e.g. showitem.blockbypass.specific.special-sword
      - "Phoenix616's Sword"
      unbreakable: true
      - "DAMAGE_ALL:>9000"
    # Add multiple matcher, e.g. an inverted matcher that
    # blocks everything that isn't in this matcher
    # inverted-match:
    #   inverted: true
    #   material:
    #   - WRITTEN_BOOK

By default only an example category is defined to block something (which shouldn't ever be an issue) and the comments explain each option.

If you want certain players to bypass these blocks then you can use the showitem.blockbypass permission to allow bypassing of all blocks or the showitem.blockbypass.specific.<name> permission to allow bypassing certain specific blocks for a more finer control over what is blocked. (All specific blocks fall back on the default block if they didn't match, to bypass the default block use showitem.blockbypass.specific.default)